<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><title>GHC.Hs.Expr</title><link href="linuwial.css" rel="stylesheet" type="text/css" title="Linuwial" /><link rel="stylesheet" type="text/css" href="quick-jump.css" /><link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=PT+Sans:400,400i,700" /><script src="haddock-bundle.min.js" async="async" type="text/javascript"></script><script type="text/x-mathjax-config">MathJax.Hub.Config({ tex2jax: { processClass: "mathjax", ignoreClass: ".*" } });</script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script></head><body><div id="package-header"><span class="caption">ghc-9.0.2: The GHC API</span><ul class="links" id="page-menu"><li><a href="src/GHC.Hs.Expr.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Safe-Inferred</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">GHC.Hs.Expr</p></div><div id="table-of-contents"><div id="contents-list"><p class="caption" onclick="window.scrollTo(0,0)">Contents</p><ul><li><a href="#g:1">Expressions proper</a></li></ul></div></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Abstract Haskell syntax for expressions.</p></div></div><div id="synopsis"><details id="syn"><summary>Synopsis</summary><ul class="details-toggle" data-details-id="syn"><li class="src short"><span class="keyword">type</span> <a href="#t:LHsExpr">LHsExpr</a> p = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> p)</li><li class="src short"><span class="keyword">type</span> <a href="#t:PostTcExpr">PostTcExpr</a> = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:PostTcTable">PostTcTable</a> = [(<a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a>, <a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a>)]</li><li class="src short"><span class="keyword">type family</span> <a href="#t:SyntaxExpr">SyntaxExpr</a> p</li><li class="src short"><span class="keyword">type family</span> <a href="#t:SyntaxExprGhc">SyntaxExprGhc</a> (p :: <a href="GHC-Hs-Extension.html#t:Pass" title="GHC.Hs.Extension">Pass</a>) = (r :: <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a>) <span class="keyword">|</span> r -&gt; p <span class="keyword">where ...</span></li><li class="src short"><span class="keyword">data</span> <a href="#t:SyntaxExprRn">SyntaxExprRn</a><ul class="subs"><li>= <a href="#v:SyntaxExprRn">SyntaxExprRn</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</li><li>| <a href="#v:NoSyntaxExprRn">NoSyntaxExprRn</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:SyntaxExprTc">SyntaxExprTc</a><ul class="subs"><li>= <a href="#v:SyntaxExprTc">SyntaxExprTc</a> { <ul class="subs"><li><a href="#v:syn_expr">syn_expr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></li><li><a href="#v:syn_arg_wraps">syn_arg_wraps</a> :: [<a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a>]</li><li><a href="#v:syn_res_wrap">syn_res_wrap</a> :: <a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a></li></ul> }</li><li>| <a href="#v:NoSyntaxExprTc">NoSyntaxExprTc</a></li></ul></li><li class="src short"><a href="#v:noExpr">noExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)</li><li class="src short"><a href="#v:noSyntaxExpr">noSyntaxExpr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)</li><li class="src short"><a href="#v:mkSyntaxExpr">mkSyntaxExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a></li><li class="src short"><a href="#v:mkRnSyntaxExpr">mkRnSyntaxExpr</a> :: <a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:CmdSyntaxTable">CmdSyntaxTable</a> p = [(<a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a>, <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> p)]</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsExpr">HsExpr</a> p<ul class="subs"><li>= <a href="#v:HsVar">HsVar</a> (<a href="GHC-Hs-Extension.html#t:XVar" title="GHC.Hs.Extension">XVar</a> p) (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p))</li><li>| <a href="#v:HsUnboundVar">HsUnboundVar</a> (<a href="GHC-Hs-Extension.html#t:XUnboundVar" title="GHC.Hs.Extension">XUnboundVar</a> p) <a href="GHC-Types-Name-Occurrence.html#t:OccName" title="GHC.Types.Name.Occurrence">OccName</a></li><li>| <a href="#v:HsConLikeOut">HsConLikeOut</a> (<a href="GHC-Hs-Extension.html#t:XConLikeOut" title="GHC.Hs.Extension">XConLikeOut</a> p) <a href="GHC-Core-ConLike.html#t:ConLike" title="GHC.Core.ConLike">ConLike</a></li><li>| <a href="#v:HsRecFld">HsRecFld</a> (<a href="GHC-Hs-Extension.html#t:XRecFld" title="GHC.Hs.Extension">XRecFld</a> p) (<a href="GHC-Hs-Type.html#t:AmbiguousFieldOcc" title="GHC.Hs.Type">AmbiguousFieldOcc</a> p)</li><li>| <a href="#v:HsOverLabel">HsOverLabel</a> (<a href="GHC-Hs-Extension.html#t:XOverLabel" title="GHC.Hs.Extension">XOverLabel</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)) <a href="GHC-Data-FastString.html#t:FastString" title="GHC.Data.FastString">FastString</a></li><li>| <a href="#v:HsIPVar">HsIPVar</a> (<a href="GHC-Hs-Extension.html#t:XIPVar" title="GHC.Hs.Extension">XIPVar</a> p) <a href="GHC-Hs-Type.html#t:HsIPName" title="GHC.Hs.Type">HsIPName</a></li><li>| <a href="#v:HsOverLit">HsOverLit</a> (<a href="GHC-Hs-Extension.html#t:XOverLitE" title="GHC.Hs.Extension">XOverLitE</a> p) (<a href="GHC-Hs-Lit.html#t:HsOverLit" title="GHC.Hs.Lit">HsOverLit</a> p)</li><li>| <a href="#v:HsLit">HsLit</a> (<a href="GHC-Hs-Extension.html#t:XLitE" title="GHC.Hs.Extension">XLitE</a> p) (<a href="GHC-Hs-Lit.html#t:HsLit" title="GHC.Hs.Lit">HsLit</a> p)</li><li>| <a href="#v:HsLam">HsLam</a> (<a href="GHC-Hs-Extension.html#t:XLam" title="GHC.Hs.Extension">XLam</a> p) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p))</li><li>| <a href="#v:HsLamCase">HsLamCase</a> (<a href="GHC-Hs-Extension.html#t:XLamCase" title="GHC.Hs.Extension">XLamCase</a> p) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p))</li><li>| <a href="#v:HsApp">HsApp</a> (<a href="GHC-Hs-Extension.html#t:XApp" title="GHC.Hs.Extension">XApp</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsAppType">HsAppType</a> (<a href="GHC-Hs-Extension.html#t:XAppTypeE" title="GHC.Hs.Extension">XAppTypeE</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Type.html#t:LHsWcType" title="GHC.Hs.Type">LHsWcType</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> p))</li><li>| <a href="#v:OpApp">OpApp</a> (<a href="GHC-Hs-Extension.html#t:XOpApp" title="GHC.Hs.Extension">XOpApp</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:NegApp">NegApp</a> (<a href="GHC-Hs-Extension.html#t:XNegApp" title="GHC.Hs.Extension">XNegApp</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> p)</li><li>| <a href="#v:HsPar">HsPar</a> (<a href="GHC-Hs-Extension.html#t:XPar" title="GHC.Hs.Extension">XPar</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:SectionL">SectionL</a> (<a href="GHC-Hs-Extension.html#t:XSectionL" title="GHC.Hs.Extension">XSectionL</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:SectionR">SectionR</a> (<a href="GHC-Hs-Extension.html#t:XSectionR" title="GHC.Hs.Extension">XSectionR</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:ExplicitTuple">ExplicitTuple</a> (<a href="GHC-Hs-Extension.html#t:XExplicitTuple" title="GHC.Hs.Extension">XExplicitTuple</a> p) [<a href="GHC-Hs-Expr.html#t:LHsTupArg" title="GHC.Hs.Expr">LHsTupArg</a> p] <a href="GHC-Types-Basic.html#t:Boxity" title="GHC.Types.Basic">Boxity</a></li><li>| <a href="#v:ExplicitSum">ExplicitSum</a> (<a href="GHC-Hs-Extension.html#t:XExplicitSum" title="GHC.Hs.Extension">XExplicitSum</a> p) <a href="GHC-Types-Basic.html#t:ConTag" title="GHC.Types.Basic">ConTag</a> <a href="GHC-Types-Basic.html#t:Arity" title="GHC.Types.Basic">Arity</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsCase">HsCase</a> (<a href="GHC-Hs-Extension.html#t:XCase" title="GHC.Hs.Extension">XCase</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p))</li><li>| <a href="#v:HsIf">HsIf</a> (<a href="GHC-Hs-Extension.html#t:XIf" title="GHC.Hs.Extension">XIf</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsMultiIf">HsMultiIf</a> (<a href="GHC-Hs-Extension.html#t:XMultiIf" title="GHC.Hs.Extension">XMultiIf</a> p) [<a href="GHC-Hs-Expr.html#t:LGRHS" title="GHC.Hs.Expr">LGRHS</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)]</li><li>| <a href="#v:HsLet">HsLet</a> (<a href="GHC-Hs-Extension.html#t:XLet" title="GHC.Hs.Extension">XLet</a> p) (<a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsDo">HsDo</a> (<a href="GHC-Hs-Extension.html#t:XDo" title="GHC.Hs.Extension">XDo</a> p) (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> p])</li><li>| <a href="#v:ExplicitList">ExplicitList</a> (<a href="GHC-Hs-Extension.html#t:XExplicitList" title="GHC.Hs.Extension">XExplicitList</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> p)) [<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p]</li><li>| <a href="#v:RecordCon">RecordCon</a> { <ul class="subs"><li><a href="#v:rcon_ext">rcon_ext</a> :: <a href="GHC-Hs-Extension.html#t:XRecordCon" title="GHC.Hs.Extension">XRecordCon</a> p</li><li><a href="#v:rcon_con_name">rcon_con_name</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)</li><li><a href="#v:rcon_flds">rcon_flds</a> :: <a href="GHC-Hs-Expr.html#t:HsRecordBinds" title="GHC.Hs.Expr">HsRecordBinds</a> p</li></ul> }</li><li>| <a href="#v:RecordUpd">RecordUpd</a> { <ul class="subs"><li><a href="#v:rupd_ext">rupd_ext</a> :: <a href="GHC-Hs-Extension.html#t:XRecordUpd" title="GHC.Hs.Extension">XRecordUpd</a> p</li><li><a href="#v:rupd_expr">rupd_expr</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p</li><li><a href="#v:rupd_flds">rupd_flds</a> :: [<a href="GHC-Hs-Pat.html#t:LHsRecUpdField" title="GHC.Hs.Pat">LHsRecUpdField</a> p]</li></ul> }</li><li>| <a href="#v:ExprWithTySig">ExprWithTySig</a> (<a href="GHC-Hs-Extension.html#t:XExprWithTySig" title="GHC.Hs.Extension">XExprWithTySig</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Type.html#t:LHsSigWcType" title="GHC.Hs.Type">LHsSigWcType</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> p))</li><li>| <a href="#v:ArithSeq">ArithSeq</a> (<a href="GHC-Hs-Extension.html#t:XArithSeq" title="GHC.Hs.Extension">XArithSeq</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> p)) (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> p)</li><li>| <a href="#v:HsBracket">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:XBracket" title="GHC.Hs.Extension">XBracket</a> p) (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> p)</li><li>| <a href="#v:HsRnBracketOut">HsRnBracketOut</a> (<a href="GHC-Hs-Extension.html#t:XRnBracketOut" title="GHC.Hs.Extension">XRnBracketOut</a> p) (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) [<a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a>]</li><li>| <a href="#v:HsTcBracketOut">HsTcBracketOut</a> (<a href="GHC-Hs-Extension.html#t:XTcBracketOut" title="GHC.Hs.Extension">XTcBracketOut</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Tc-Types-Evidence.html#t:QuoteWrapper" title="GHC.Tc.Types.Evidence">QuoteWrapper</a>) (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) [<a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a>]</li><li>| <a href="#v:HsSpliceE">HsSpliceE</a> (<a href="GHC-Hs-Extension.html#t:XSpliceE" title="GHC.Hs.Extension">XSpliceE</a> p) (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> p)</li><li>| <a href="#v:HsProc">HsProc</a> (<a href="GHC-Hs-Extension.html#t:XProc" title="GHC.Hs.Extension">XProc</a> p) (<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> p) (<a href="GHC-Hs-Expr.html#t:LHsCmdTop" title="GHC.Hs.Expr">LHsCmdTop</a> p)</li><li>| <a href="#v:HsStatic">HsStatic</a> (<a href="GHC-Hs-Extension.html#t:XStatic" title="GHC.Hs.Extension">XStatic</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsTick">HsTick</a> (<a href="GHC-Hs-Extension.html#t:XTick" title="GHC.Hs.Extension">XTick</a> p) (<a href="GHC-Core.html#t:Tickish" title="GHC.Core">Tickish</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsBinTick">HsBinTick</a> (<a href="GHC-Hs-Extension.html#t:XBinTick" title="GHC.Hs.Extension">XBinTick</a> p) <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:HsPragE">HsPragE</a> (<a href="GHC-Hs-Extension.html#t:XPragE" title="GHC.Hs.Extension">XPragE</a> p) (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:XExpr">XExpr</a> !(<a href="GHC-Hs-Extension.html#t:XXExpr" title="GHC.Hs.Extension">XXExpr</a> p)</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:RecordConTc">RecordConTc</a> = <a href="#v:RecordConTc">RecordConTc</a> {<ul class="subs"><li><a href="#v:rcon_con_like">rcon_con_like</a> :: <a href="GHC-Core-ConLike.html#t:ConLike" title="GHC.Core.ConLike">ConLike</a></li><li><a href="#v:rcon_con_expr">rcon_con_expr</a> :: <a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:RecordUpdTc">RecordUpdTc</a> = <a href="#v:RecordUpdTc">RecordUpdTc</a> {<ul class="subs"><li><a href="#v:rupd_cons">rupd_cons</a> :: [<a href="GHC-Core-ConLike.html#t:ConLike" title="GHC.Core.ConLike">ConLike</a>]</li><li><a href="#v:rupd_in_tys">rupd_in_tys</a> :: [<a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a>]</li><li><a href="#v:rupd_out_tys">rupd_out_tys</a> :: [<a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a>]</li><li><a href="#v:rupd_wrap">rupd_wrap</a> :: <a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsWrap">HsWrap</a> hs_syn = <a href="#v:HsWrap">HsWrap</a> <a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a> (hs_syn <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</li><li class="src short"><span class="keyword">data</span> <a href="#t:XXExprGhcTc">XXExprGhcTc</a><ul class="subs"><li>= <a href="#v:WrapExpr">WrapExpr</a> !(<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a>)</li><li>| <a href="#v:ExpansionExpr">ExpansionExpr</a> !(<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>))</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:HsExpansion">HsExpansion</a> a b = <a href="#v:HsExpanded">HsExpanded</a> a b</li><li class="src short"><a href="#v:mkExpanded">mkExpanded</a> :: (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; b) -&gt; a -&gt; b -&gt; b</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsPragE">HsPragE</a> p<ul class="subs"><li>= <a href="#v:HsPragSCC">HsPragSCC</a> (<a href="GHC-Hs-Extension.html#t:XSCC" title="GHC.Hs.Extension">XSCC</a> p) <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a> <a href="GHC-Types-Basic.html#t:StringLiteral" title="GHC.Types.Basic">StringLiteral</a></li><li>| <a href="#v:HsPragTick">HsPragTick</a> (<a href="GHC-Hs-Extension.html#t:XTickPragma" title="GHC.Hs.Extension">XTickPragma</a> p) <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a> (<a href="GHC-Types-Basic.html#t:StringLiteral" title="GHC.Types.Basic">StringLiteral</a>, (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>), (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>)) ((<a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>, <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>), (<a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>, <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>))</li><li>| <a href="#v:XHsPragE">XHsPragE</a> !(<a href="GHC-Hs-Extension.html#t:XXPragE" title="GHC.Hs.Extension">XXPragE</a> p)</li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:LHsTupArg">LHsTupArg</a> id = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> id)</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsTupArg">HsTupArg</a> id<ul class="subs"><li>= <a href="#v:Present">Present</a> (<a href="GHC-Hs-Extension.html#t:XPresent" title="GHC.Hs.Extension">XPresent</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:Missing">Missing</a> (<a href="GHC-Hs-Extension.html#t:XMissing" title="GHC.Hs.Extension">XMissing</a> id)</li><li>| <a href="#v:XTupArg">XTupArg</a> !(<a href="GHC-Hs-Extension.html#t:XXTupArg" title="GHC.Hs.Extension">XXTupArg</a> id)</li></ul></li><li class="src short"><a href="#v:tupArgPresent">tupArgPresent</a> :: <a href="GHC-Hs-Expr.html#t:LHsTupArg" title="GHC.Hs.Expr">LHsTupArg</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:pprLExpr">pprLExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprExpr">pprExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:isQuietHsExpr">isQuietHsExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:pprBinds">pprBinds</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR) =&gt; <a href="GHC-Hs-Binds.html#t:HsLocalBindsLR" title="GHC.Hs.Binds">HsLocalBindsLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_lexpr">ppr_lexpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_expr">ppr_expr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_infix_expr">ppr_infix_expr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_apps">ppr_apps</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; [<a href="GHC-Prelude.html#t:Either" title="GHC.Prelude">Either</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)) (<a href="GHC-Hs-Type.html#t:LHsWcType" title="GHC.Hs.Type">LHsWcType</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)))] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprExternalSrcLoc">pprExternalSrcLoc</a> :: (<a href="GHC-Types-Basic.html#t:StringLiteral" title="GHC.Types.Basic">StringLiteral</a>, (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>), (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>)) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprDebugParendExpr">pprDebugParendExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprParendLExpr">pprParendLExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprParendExpr">pprParendExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:hsExprNeedsParens">hsExprNeedsParens</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:parenthesizeHsExpr">parenthesizeHsExpr</a> :: <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)</li><li class="src short"><a href="#v:stripParensLHsExpr">stripParensLHsExpr</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)</li><li class="src short"><a href="#v:stripParensHsExpr">stripParensHsExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)</li><li class="src short"><a href="#v:isAtomicHsExpr">isAtomicHsExpr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:LHsCmd">LHsCmd</a> id = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> id)</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsCmd">HsCmd</a> id<ul class="subs"><li>= <a href="#v:HsCmdArrApp">HsCmdArrApp</a> (<a href="GHC-Hs-Extension.html#t:XCmdArrApp" title="GHC.Hs.Extension">XCmdArrApp</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li>| <a href="#v:HsCmdArrForm">HsCmdArrForm</a> (<a href="GHC-Hs-Extension.html#t:XCmdArrForm" title="GHC.Hs.Extension">XCmdArrForm</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="GHC-Types-Basic.html#t:LexicalFixity" title="GHC.Types.Basic">LexicalFixity</a> (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Types-Basic.html#t:Fixity" title="GHC.Types.Basic">Fixity</a>) [<a href="GHC-Hs-Expr.html#t:LHsCmdTop" title="GHC.Hs.Expr">LHsCmdTop</a> id]</li><li>| <a href="#v:HsCmdApp">HsCmdApp</a> (<a href="GHC-Hs-Extension.html#t:XCmdApp" title="GHC.Hs.Extension">XCmdApp</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:HsCmdLam">HsCmdLam</a> (<a href="GHC-Hs-Extension.html#t:XCmdLam" title="GHC.Hs.Extension">XCmdLam</a> id) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id))</li><li>| <a href="#v:HsCmdPar">HsCmdPar</a> (<a href="GHC-Hs-Extension.html#t:XCmdPar" title="GHC.Hs.Extension">XCmdPar</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</li><li>| <a href="#v:HsCmdCase">HsCmdCase</a> (<a href="GHC-Hs-Extension.html#t:XCmdCase" title="GHC.Hs.Extension">XCmdCase</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id))</li><li>| <a href="#v:HsCmdLamCase">HsCmdLamCase</a> (<a href="GHC-Hs-Extension.html#t:XCmdLamCase" title="GHC.Hs.Extension">XCmdLamCase</a> id) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id))</li><li>| <a href="#v:HsCmdIf">HsCmdIf</a> (<a href="GHC-Hs-Extension.html#t:XCmdIf" title="GHC.Hs.Extension">XCmdIf</a> id) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</li><li>| <a href="#v:HsCmdLet">HsCmdLet</a> (<a href="GHC-Hs-Extension.html#t:XCmdLet" title="GHC.Hs.Extension">XCmdLet</a> id) (<a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</li><li>| <a href="#v:HsCmdDo">HsCmdDo</a> (<a href="GHC-Hs-Extension.html#t:XCmdDo" title="GHC.Hs.Extension">XCmdDo</a> id) (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:CmdLStmt" title="GHC.Hs.Expr">CmdLStmt</a> id])</li><li>| <a href="#v:XCmd">XCmd</a> !(<a href="GHC-Hs-Extension.html#t:XXCmd" title="GHC.Hs.Extension">XXCmd</a> id)</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:HsArrAppType">HsArrAppType</a><ul class="subs"><li>= <a href="#v:HsHigherOrderApp">HsHigherOrderApp</a></li><li>| <a href="#v:HsFirstOrderApp">HsFirstOrderApp</a></li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:LHsCmdTop">LHsCmdTop</a> p = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> p)</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsCmdTop">HsCmdTop</a> p<ul class="subs"><li>= <a href="#v:HsCmdTop">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:XCmdTop" title="GHC.Hs.Extension">XCmdTop</a> p) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> p)</li><li>| <a href="#v:XCmdTop">XCmdTop</a> !(<a href="GHC-Hs-Extension.html#t:XXCmdTop" title="GHC.Hs.Extension">XXCmdTop</a> p)</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:CmdTopTc">CmdTopTc</a> = <a href="#v:CmdTopTc">CmdTopTc</a> <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a> <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a> (<a href="GHC-Hs-Expr.html#t:CmdSyntaxTable" title="GHC.Hs.Expr">CmdSyntaxTable</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</li><li class="src short"><a href="#v:pprLCmd">pprLCmd</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprCmd">pprCmd</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:isQuietHsCmd">isQuietHsCmd</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:ppr_lcmd">ppr_lcmd</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_cmd">ppr_cmd</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprCmdArg">pprCmdArg</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:HsRecordBinds">HsRecordBinds</a> p = <a href="GHC-Hs-Pat.html#t:HsRecFields" title="GHC.Hs.Pat">HsRecFields</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li class="src short"><span class="keyword">data</span> <a href="#t:MatchGroup">MatchGroup</a> p body<ul class="subs"><li>= <a href="#v:MG">MG</a> { <ul class="subs"><li><a href="#v:mg_ext">mg_ext</a> :: <a href="GHC-Hs-Extension.html#t:XMG" title="GHC.Hs.Extension">XMG</a> p body</li><li><a href="#v:mg_alts">mg_alts</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:LMatch" title="GHC.Hs.Expr">LMatch</a> p body]</li><li><a href="#v:mg_origin">mg_origin</a> :: <a href="GHC-Types-Basic.html#t:Origin" title="GHC.Types.Basic">Origin</a></li></ul> }</li><li>| <a href="#v:XMatchGroup">XMatchGroup</a> !(<a href="GHC-Hs-Extension.html#t:XXMatchGroup" title="GHC.Hs.Extension">XXMatchGroup</a> p body)</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:MatchGroupTc">MatchGroupTc</a> = <a href="#v:MatchGroupTc">MatchGroupTc</a> {<ul class="subs"><li><a href="#v:mg_arg_tys">mg_arg_tys</a> :: [<a href="GHC-Core-Type.html#t:Scaled" title="GHC.Core.Type">Scaled</a> <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a>]</li><li><a href="#v:mg_res_ty">mg_res_ty</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></li></ul>}</li><li class="src short"><span class="keyword">type</span> <a href="#t:LMatch">LMatch</a> id body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> id body)</li><li class="src short"><span class="keyword">data</span> <a href="#t:Match">Match</a> p body<ul class="subs"><li>= <a href="#v:Match">Match</a> { <ul class="subs"><li><a href="#v:m_ext">m_ext</a> :: <a href="GHC-Hs-Extension.html#t:XCMatch" title="GHC.Hs.Extension">XCMatch</a> p body</li><li><a href="#v:m_ctxt">m_ctxt</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> p)</li><li><a href="#v:m_pats">m_pats</a> :: [<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> p]</li><li><a href="#v:m_grhss">m_grhss</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> p body</li></ul> }</li><li>| <a href="#v:XMatch">XMatch</a> !(<a href="GHC-Hs-Extension.html#t:XXMatch" title="GHC.Hs.Extension">XXMatch</a> p body)</li></ul></li><li class="src short"><a href="#v:isInfixMatch">isInfixMatch</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> id body -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:isEmptyMatchGroup">isEmptyMatchGroup</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id body -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:isSingletonMatchGroup">isSingletonMatchGroup</a> :: [<a href="GHC-Hs-Expr.html#t:LMatch" title="GHC.Hs.Expr">LMatch</a> id body] -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:matchGroupArity">matchGroupArity</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> id) body -&gt; <a href="GHC-Types-Basic.html#t:Arity" title="GHC.Types.Basic">Arity</a></li><li class="src short"><a href="#v:hsLMatchPats">hsLMatchPats</a> :: <a href="GHC-Hs-Expr.html#t:LMatch" title="GHC.Hs.Expr">LMatch</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> id) body -&gt; [<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> id)]</li><li class="src short"><span class="keyword">data</span> <a href="#t:GRHSs">GRHSs</a> p body<ul class="subs"><li>= <a href="#v:GRHSs">GRHSs</a> { <ul class="subs"><li><a href="#v:grhssExt">grhssExt</a> :: <a href="GHC-Hs-Extension.html#t:XCGRHSs" title="GHC.Hs.Extension">XCGRHSs</a> p body</li><li><a href="#v:grhssGRHSs">grhssGRHSs</a> :: [<a href="GHC-Hs-Expr.html#t:LGRHS" title="GHC.Hs.Expr">LGRHS</a> p body]</li><li><a href="#v:grhssLocalBinds">grhssLocalBinds</a> :: <a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> p</li></ul> }</li><li>| <a href="#v:XGRHSs">XGRHSs</a> !(<a href="GHC-Hs-Extension.html#t:XXGRHSs" title="GHC.Hs.Extension">XXGRHSs</a> p body)</li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:LGRHS">LGRHS</a> id body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> id body)</li><li class="src short"><span class="keyword">data</span> <a href="#t:GRHS">GRHS</a> p body<ul class="subs"><li>= <a href="#v:GRHS">GRHS</a> (<a href="GHC-Hs-Extension.html#t:XCGRHS" title="GHC.Hs.Extension">XCGRHS</a> p body) [<a href="GHC-Hs-Expr.html#t:GuardLStmt" title="GHC.Hs.Expr">GuardLStmt</a> p] body</li><li>| <a href="#v:XGRHS">XGRHS</a> !(<a href="GHC-Hs-Extension.html#t:XXGRHS" title="GHC.Hs.Extension">XXGRHS</a> p body)</li></ul></li><li class="src short"><a href="#v:pprMatches">pprMatches</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprFunBind">pprFunBind</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprPatBind">pprPatBind</a> :: <span class="keyword">forall</span> bndr p body. (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> bndr, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> bndr) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprMatch">pprMatch</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprGRHSs">pprGRHSs</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> passL -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprGRHS">pprGRHS</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> passL -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pp_rhs">pp_rhs</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> passL -&gt; body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><span class="keyword">type</span> <a href="#t:LStmt">LStmt</a> id body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> id id body)</li><li class="src short"><span class="keyword">type</span> <a href="#t:LStmtLR">LStmtLR</a> idL idR body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> idL idR body)</li><li class="src short"><span class="keyword">type</span> <a href="#t:Stmt">Stmt</a> id body = <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> id id body</li><li class="src short"><span class="keyword">type</span> <a href="#t:CmdLStmt">CmdLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:CmdStmt">CmdStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:ExprLStmt">ExprLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:ExprStmt">ExprStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:GuardLStmt">GuardLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:GuardStmt">GuardStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:GhciLStmt">GhciLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li class="src short"><span class="keyword">type</span> <a href="#t:GhciStmt">GhciStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li class="src short"><span class="keyword">data</span> <a href="#t:StmtLR">StmtLR</a> idL idR body<ul class="subs"><li>= <a href="#v:LastStmt">LastStmt</a> (<a href="GHC-Hs-Extension.html#t:XLastStmt" title="GHC.Hs.Extension">XLastStmt</a> idL idR body) body (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a>) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</li><li>| <a href="#v:BindStmt">BindStmt</a> (<a href="GHC-Hs-Extension.html#t:XBindStmt" title="GHC.Hs.Extension">XBindStmt</a> idL idR body) (<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> idL) body</li><li>| <a href="#v:ApplicativeStmt">ApplicativeStmt</a> (<a href="GHC-Hs-Extension.html#t:XApplicativeStmt" title="GHC.Hs.Extension">XApplicativeStmt</a> idL idR body) [(<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR, <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> idL)] (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR))</li><li>| <a href="#v:BodyStmt">BodyStmt</a> (<a href="GHC-Hs-Extension.html#t:XBodyStmt" title="GHC.Hs.Extension">XBodyStmt</a> idL idR body) body (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</li><li>| <a href="#v:LetStmt">LetStmt</a> (<a href="GHC-Hs-Extension.html#t:XLetStmt" title="GHC.Hs.Extension">XLetStmt</a> idL idR body) (<a href="GHC-Hs-Binds.html#t:LHsLocalBindsLR" title="GHC.Hs.Binds">LHsLocalBindsLR</a> idL idR)</li><li>| <a href="#v:ParStmt">ParStmt</a> (<a href="GHC-Hs-Extension.html#t:XParStmt" title="GHC.Hs.Extension">XParStmt</a> idL idR body) [<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> idL idR] (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> idR) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</li><li>| <a href="#v:TransStmt">TransStmt</a> { <ul class="subs"><li><a href="#v:trS_ext">trS_ext</a> :: <a href="GHC-Hs-Extension.html#t:XTransStmt" title="GHC.Hs.Extension">XTransStmt</a> idL idR body</li><li><a href="#v:trS_form">trS_form</a> :: <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a></li><li><a href="#v:trS_stmts">trS_stmts</a> :: [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> idL]</li><li><a href="#v:trS_bndrs">trS_bndrs</a> :: [(<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR, <a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR)]</li><li><a href="#v:trS_using">trS_using</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idR</li><li><a href="#v:trS_by">trS_by</a> :: <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idR)</li><li><a href="#v:trS_ret">trS_ret</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</li><li><a href="#v:trS_bind">trS_bind</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</li><li><a href="#v:trS_fmap">trS_fmap</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> idR</li></ul> }</li><li>| <a href="#v:RecStmt">RecStmt</a> { <ul class="subs"><li><a href="#v:recS_ext">recS_ext</a> :: <a href="GHC-Hs-Extension.html#t:XRecStmt" title="GHC.Hs.Extension">XRecStmt</a> idL idR body</li><li><a href="#v:recS_stmts">recS_stmts</a> :: [<a href="GHC-Hs-Expr.html#t:LStmtLR" title="GHC.Hs.Expr">LStmtLR</a> idL idR body]</li><li><a href="#v:recS_later_ids">recS_later_ids</a> :: [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR]</li><li><a href="#v:recS_rec_ids">recS_rec_ids</a> :: [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR]</li><li><a href="#v:recS_bind_fn">recS_bind_fn</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</li><li><a href="#v:recS_ret_fn">recS_ret_fn</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</li><li><a href="#v:recS_mfix_fn">recS_mfix_fn</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</li></ul> }</li><li>| <a href="#v:XStmtLR">XStmtLR</a> !(<a href="GHC-Hs-Extension.html#t:XXStmtLR" title="GHC.Hs.Extension">XXStmtLR</a> idL idR body)</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:RecStmtTc">RecStmtTc</a> = <a href="#v:RecStmtTc">RecStmtTc</a> {<ul class="subs"><li><a href="#v:recS_bind_ty">recS_bind_ty</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></li><li><a href="#v:recS_later_rets">recS_later_rets</a> :: [<a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a>]</li><li><a href="#v:recS_rec_rets">recS_rec_rets</a> :: [<a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a>]</li><li><a href="#v:recS_ret_ty">recS_ret_ty</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:XBindStmtRn">XBindStmtRn</a> = <a href="#v:XBindStmtRn">XBindStmtRn</a> {<ul class="subs"><li><a href="#v:xbsrn_bindOp">xbsrn_bindOp</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></li><li><a href="#v:xbsrn_failOp">xbsrn_failOp</a> :: <a href="GHC-Hs-Expr.html#t:FailOperator" title="GHC.Hs.Expr">FailOperator</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:XBindStmtTc">XBindStmtTc</a> = <a href="#v:XBindStmtTc">XBindStmtTc</a> {<ul class="subs"><li><a href="#v:xbstc_bindOp">xbstc_bindOp</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></li><li><a href="#v:xbstc_boundResultType">xbstc_boundResultType</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></li><li><a href="#v:xbstc_boundResultMult">xbstc_boundResultMult</a> :: <a href="GHC-Core-Type.html#t:Mult" title="GHC.Core.Type">Mult</a></li><li><a href="#v:xbstc_failOp">xbstc_failOp</a> :: <a href="GHC-Hs-Expr.html#t:FailOperator" title="GHC.Hs.Expr">FailOperator</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></li></ul>}</li><li class="src short"><span class="keyword">data</span> <a href="#t:TransForm">TransForm</a><ul class="subs"><li>= <a href="#v:ThenForm">ThenForm</a></li><li>| <a href="#v:GroupForm">GroupForm</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:ParStmtBlock">ParStmtBlock</a> idL idR<ul class="subs"><li>= <a href="#v:ParStmtBlock">ParStmtBlock</a> (<a href="GHC-Hs-Extension.html#t:XParStmtBlock" title="GHC.Hs.Extension">XParStmtBlock</a> idL idR) [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> idL] [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR] (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</li><li>| <a href="#v:XParStmtBlock">XParStmtBlock</a> !(<a href="GHC-Hs-Extension.html#t:XXParStmtBlock" title="GHC.Hs.Extension">XXParStmtBlock</a> idL idR)</li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:FailOperator">FailOperator</a> id = <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> id)</li><li class="src short"><span class="keyword">data</span> <a href="#t:ApplicativeArg">ApplicativeArg</a> idL<ul class="subs"><li>= <a href="#v:ApplicativeArgOne">ApplicativeArgOne</a> { <ul class="subs"><li><a href="#v:xarg_app_arg_one">xarg_app_arg_one</a> :: <a href="GHC-Hs-Extension.html#t:XApplicativeArgOne" title="GHC.Hs.Extension">XApplicativeArgOne</a> idL</li><li><a href="#v:app_arg_pattern">app_arg_pattern</a> :: <a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> idL</li><li><a href="#v:arg_expr">arg_expr</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idL</li><li><a href="#v:is_body_stmt">is_body_stmt</a> :: <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li></ul> }</li><li>| <a href="#v:ApplicativeArgMany">ApplicativeArgMany</a> { <ul class="subs"><li><a href="#v:xarg_app_arg_many">xarg_app_arg_many</a> :: <a href="GHC-Hs-Extension.html#t:XApplicativeArgMany" title="GHC.Hs.Extension">XApplicativeArgMany</a> idL</li><li><a href="#v:app_stmts">app_stmts</a> :: [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> idL]</li><li><a href="#v:final_expr">final_expr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> idL</li><li><a href="#v:bv_pattern">bv_pattern</a> :: <a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> idL</li><li><a href="#v:stmt_context">stmt_context</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></li></ul> }</li><li>| <a href="#v:XApplicativeArg">XApplicativeArg</a> !(<a href="GHC-Hs-Extension.html#t:XXApplicativeArg" title="GHC.Hs.Extension">XXApplicativeArg</a> idL)</li></ul></li><li class="src short"><a href="#v:pprStmt">pprStmt</a> :: <span class="keyword">forall</span> idL idR body. (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprArg">pprArg</a> :: <span class="keyword">forall</span> idL. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL =&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprTransformStmt">pprTransformStmt</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)] -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprTransStmt">pprTransStmt</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body =&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> body -&gt; body -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprBy">pprBy</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body =&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprDo">pprDo</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> any -&gt; [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_module_name_prefix">ppr_module_name_prefix</a> :: <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_do_stmts">ppr_do_stmts</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; [<a href="GHC-Hs-Expr.html#t:LStmtLR" title="GHC.Hs.Expr">LStmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprComp">pprComp</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprQuals">pprQuals</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:HsSplice">HsSplice</a> id<ul class="subs"><li>= <a href="#v:HsTypedSplice">HsTypedSplice</a> (<a href="GHC-Hs-Extension.html#t:XTypedSplice" title="GHC.Hs.Extension">XTypedSplice</a> id) <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:HsUntypedSplice">HsUntypedSplice</a> (<a href="GHC-Hs-Extension.html#t:XUntypedSplice" title="GHC.Hs.Extension">XUntypedSplice</a> id) <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:HsQuasiQuote">HsQuasiQuote</a> (<a href="GHC-Hs-Extension.html#t:XQuasiQuote" title="GHC.Hs.Extension">XQuasiQuote</a> id) (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> <a href="GHC-Data-FastString.html#t:FastString" title="GHC.Data.FastString">FastString</a></li><li>| <a href="#v:HsSpliced">HsSpliced</a> (<a href="GHC-Hs-Extension.html#t:XSpliced" title="GHC.Hs.Extension">XSpliced</a> id) <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> id)</li><li>| <a href="#v:XSplice">XSplice</a> !(<a href="GHC-Hs-Extension.html#t:XXSplice" title="GHC.Hs.Extension">XXSplice</a> id)</li></ul></li><li class="src short"><span class="keyword">newtype</span> <a href="#t:HsSplicedT">HsSplicedT</a> = <a href="#v:HsSplicedT">HsSplicedT</a> <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:SpliceDecoration">SpliceDecoration</a><ul class="subs"><li>= <a href="#v:DollarSplice">DollarSplice</a></li><li>| <a href="#v:BareSplice">BareSplice</a></li></ul></li><li class="src short"><a href="#v:isTypedSplice">isTypedSplice</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><span class="keyword">newtype</span> <a href="#t:ThModFinalizers">ThModFinalizers</a> = <a href="#v:ThModFinalizers">ThModFinalizers</a> [<a href="../ghci/GHCi-RemoteTypes.html#t:ForeignRef" title="GHCi.RemoteTypes">ForeignRef</a> (<a href="../template-haskell/Language-Haskell-TH-Syntax.html#t:Q" title="Language.Haskell.TH.Syntax">Q</a> ())]</li><li class="src short"><span class="keyword">data</span> <a href="#t:DelayedSplice">DelayedSplice</a> = <a href="#v:DelayedSplice">DelayedSplice</a> <a href="GHC-Tc-Types.html#t:TcLclEnv" title="GHC.Tc.Types">TcLclEnv</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="GHC-Tc-Utils-TcType.html#t:TcType" title="GHC.Tc.Utils.TcType">TcType</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</li><li class="src short"><span class="keyword">data</span> <a href="#t:HsSplicedThing">HsSplicedThing</a> id<ul class="subs"><li>= <a href="#v:HsSplicedExpr">HsSplicedExpr</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> id)</li><li>| <a href="#v:HsSplicedTy">HsSplicedTy</a> (<a href="GHC-Hs-Type.html#t:HsType" title="GHC.Hs.Type">HsType</a> id)</li><li>| <a href="#v:HsSplicedPat">HsSplicedPat</a> (<a href="GHC-Hs-Pat.html#t:Pat" title="GHC.Hs.Pat">Pat</a> id)</li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:SplicePointName">SplicePointName</a> = <a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:PendingRnSplice">PendingRnSplice</a> = <a href="#v:PendingRnSplice">PendingRnSplice</a> <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="GHC-Hs-Expr.html#t:SplicePointName" title="GHC.Hs.Expr">SplicePointName</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</li><li class="src short"><span class="keyword">data</span> <a href="#t:UntypedSpliceFlavour">UntypedSpliceFlavour</a><ul class="subs"><li>= <a href="#v:UntypedExpSplice">UntypedExpSplice</a></li><li>| <a href="#v:UntypedPatSplice">UntypedPatSplice</a></li><li>| <a href="#v:UntypedTypeSplice">UntypedTypeSplice</a></li><li>| <a href="#v:UntypedDeclSplice">UntypedDeclSplice</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:PendingTcSplice">PendingTcSplice</a> = <a href="#v:PendingTcSplice">PendingTcSplice</a> <a href="GHC-Hs-Expr.html#t:SplicePointName" title="GHC.Hs.Expr">SplicePointName</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</li><li class="src short"><a href="#v:pprPendingSplice">pprPendingSplice</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:SplicePointName" title="GHC.Hs.Expr">SplicePointName</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprSpliceDecl">pprSpliceDecl</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Types-Basic.html#t:SpliceExplicitFlag" title="GHC.Types.Basic">SpliceExplicitFlag</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_splice_decl">ppr_splice_decl</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprSplice">pprSplice</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_quasi">ppr_quasi</a> :: <a href="GHC-Utils-Outputable.html#t:OutputableBndr" title="GHC.Utils.Outputable">OutputableBndr</a> p =&gt; p -&gt; p -&gt; <a href="GHC-Data-FastString.html#t:FastString" title="GHC.Data.FastString">FastString</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:ppr_splice">ppr_splice</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:HsBracket">HsBracket</a> p<ul class="subs"><li>= <a href="#v:ExpBr">ExpBr</a> (<a href="GHC-Hs-Extension.html#t:XExpBr" title="GHC.Hs.Extension">XExpBr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:PatBr">PatBr</a> (<a href="GHC-Hs-Extension.html#t:XPatBr" title="GHC.Hs.Extension">XPatBr</a> p) (<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> p)</li><li>| <a href="#v:DecBrL">DecBrL</a> (<a href="GHC-Hs-Extension.html#t:XDecBrL" title="GHC.Hs.Extension">XDecBrL</a> p) [<a href="GHC-Hs-Decls.html#t:LHsDecl" title="GHC.Hs.Decls">LHsDecl</a> p]</li><li>| <a href="#v:DecBrG">DecBrG</a> (<a href="GHC-Hs-Extension.html#t:XDecBrG" title="GHC.Hs.Extension">XDecBrG</a> p) (<a href="GHC-Hs-Decls.html#t:HsGroup" title="GHC.Hs.Decls">HsGroup</a> p)</li><li>| <a href="#v:TypBr">TypBr</a> (<a href="GHC-Hs-Extension.html#t:XTypBr" title="GHC.Hs.Extension">XTypBr</a> p) (<a href="GHC-Hs-Type.html#t:LHsType" title="GHC.Hs.Type">LHsType</a> p)</li><li>| <a href="#v:VarBr">VarBr</a> (<a href="GHC-Hs-Extension.html#t:XVarBr" title="GHC.Hs.Extension">XVarBr</a> p) <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)</li><li>| <a href="#v:TExpBr">TExpBr</a> (<a href="GHC-Hs-Extension.html#t:XTExpBr" title="GHC.Hs.Extension">XTExpBr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</li><li>| <a href="#v:XBracket">XBracket</a> !(<a href="GHC-Hs-Extension.html#t:XXBracket" title="GHC.Hs.Extension">XXBracket</a> p)</li></ul></li><li class="src short"><a href="#v:isTypedBracket">isTypedBracket</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:pprHsBracket">pprHsBracket</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:thBrackets">thBrackets</a> :: <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:thTyBrackets">thTyBrackets</a> :: <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:ArithSeqInfo">ArithSeqInfo</a> id<ul class="subs"><li>= <a href="#v:From">From</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:FromThen">FromThen</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:FromTo">FromTo</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li><li>| <a href="#v:FromThenTo">FromThenTo</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</li></ul></li><li class="src short"><a href="#v:pp_dotdot">pp_dotdot</a> :: <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:HsMatchContext">HsMatchContext</a> p<ul class="subs"><li>= <a href="#v:FunRhs">FunRhs</a> { <ul class="subs"><li><a href="#v:mc_fun">mc_fun</a> :: <a href="GHC-Hs-Extension.html#t:LIdP" title="GHC.Hs.Extension">LIdP</a> p</li><li><a href="#v:mc_fixity">mc_fixity</a> :: <a href="GHC-Types-Basic.html#t:LexicalFixity" title="GHC.Types.Basic">LexicalFixity</a></li><li><a href="#v:mc_strictness">mc_strictness</a> :: <a href="GHC-Core-DataCon.html#t:SrcStrictness" title="GHC.Core.DataCon">SrcStrictness</a></li></ul> }</li><li>| <a href="#v:LambdaExpr">LambdaExpr</a></li><li>| <a href="#v:CaseAlt">CaseAlt</a></li><li>| <a href="#v:IfAlt">IfAlt</a></li><li>| <a href="#v:ProcExpr">ProcExpr</a></li><li>| <a href="#v:PatBindRhs">PatBindRhs</a></li><li>| <a href="#v:PatBindGuards">PatBindGuards</a></li><li>| <a href="#v:RecUpd">RecUpd</a></li><li>| <a href="#v:StmtCtxt">StmtCtxt</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p)</li><li>| <a href="#v:ThPatSplice">ThPatSplice</a></li><li>| <a href="#v:ThPatQuote">ThPatQuote</a></li><li>| <a href="#v:PatSyn">PatSyn</a></li></ul></li><li class="src short"><a href="#v:isPatSynCtxt">isPatSynCtxt</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:HsStmtContext">HsStmtContext</a> p<ul class="subs"><li>= <a href="#v:ListComp">ListComp</a></li><li>| <a href="#v:MonadComp">MonadComp</a></li><li>| <a href="#v:DoExpr">DoExpr</a> (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a>)</li><li>| <a href="#v:MDoExpr">MDoExpr</a> (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a>)</li><li>| <a href="#v:ArrowExpr">ArrowExpr</a></li><li>| <a href="#v:GhciStmtCtxt">GhciStmtCtxt</a></li><li>| <a href="#v:PatGuard">PatGuard</a> (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p)</li><li>| <a href="#v:ParStmtCtxt">ParStmtCtxt</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p)</li><li>| <a href="#v:TransStmtCtxt">TransStmtCtxt</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p)</li></ul></li><li class="src short"><a href="#v:qualifiedDoModuleName_maybe">qualifiedDoModuleName_maybe</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a></li><li class="src short"><a href="#v:isComprehensionContext">isComprehensionContext</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:isMonadStmtContext">isMonadStmtContext</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:isMonadCompContext">isMonadCompContext</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></li><li class="src short"><a href="#v:matchSeparator">matchSeparator</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprMatchContext">pprMatchContext</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprMatchContextNoun">pprMatchContextNoun</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> id -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprAStmtContext">pprAStmtContext</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprStmtContext">pprStmtContext</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:prependQualified">prependQualified</a> :: <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:matchContextErrString">matchContextErrString</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprMatchInCtxt">pprMatchInCtxt</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li><li class="src short"><a href="#v:pprStmtInCtxt">pprStmtInCtxt</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a></li></ul></details></div><div id="interface"><a href="#g:1" id="g:1"><h1>Expressions proper</h1></a><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LHsExpr" class="def">LHsExpr</a> p <a href="src/GHC.Hs.Expr.html#LHsExpr" class="link">Source</a> <a href="#t:LHsExpr" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">&nbsp;= <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> p)</td><td class="doc"><p>May have <code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnComma" title="GHC.Parser.Annotation">AnnComma</a></code> when
   in a list</p></td></tr></table></div><div class="doc"><p>Located Haskell Expression</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:PostTcExpr" class="def">PostTcExpr</a> = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="src/GHC.Hs.Expr.html#PostTcExpr" class="link">Source</a> <a href="#t:PostTcExpr" class="selflink">#</a></p><div class="doc"><p>Post-Type checking Expression</p><p>PostTcExpr is an evidence expression attached to the syntax tree by the
 type checker (c.f. postTcType).</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:PostTcTable" class="def">PostTcTable</a> = [(<a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a>, <a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a>)] <a href="src/GHC.Hs.Expr.html#PostTcTable" class="link">Source</a> <a href="#t:PostTcTable" class="selflink">#</a></p><div class="doc"><p>Post-Type checking Table</p><p>We use a PostTcTable where there are a bunch of pieces of evidence, more
 than is convenient to keep individually.</p></div></div><div class="top"><p class="src"><span class="keyword">type family</span> <a id="t:SyntaxExpr" class="def">SyntaxExpr</a> p <a href="src/GHC.Hs.Expr.html#SyntaxExpr" class="link">Source</a> <a href="#t:SyntaxExpr" class="selflink">#</a></p><div class="doc"><p>Syntax Expression</p><p>SyntaxExpr is represents the function used in interpreting rebindable
 syntax. In the parser, we have no information to supply; in the renamer,
 we have the name of the function (but see
 Note [Monad fail : Rebindable syntax, overloaded strings] for a wrinkle)
 and in the type-checker we have a more elaborate structure <code><a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a></code>.</p><p>In some contexts, rebindable syntax is not implemented, and so we have
 constructors to represent that possibility in both the renamer and
 typechecker instantiations.</p><p>E.g. <code>(&gt;&gt;=)</code> is filled in before the renamer by the appropriate <code><a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a></code> for
      <code>(&gt;&gt;=)</code>, and then instantiated by the type checker with its type args
      etc</p></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:SyntaxExpr">Instances</h4><details id="i:SyntaxExpr" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:if:SyntaxExpr:SyntaxExpr:1"></span> <span class="keyword">type</span> <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)</span> <a href="src/GHC.Hs.Expr.html#line-134" class="link">Source</a> <a href="#t:SyntaxExpr" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:if:SyntaxExpr:SyntaxExpr:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) = <a href="GHC-Hs-Expr.html#t:SyntaxExprGhc" title="GHC.Hs.Expr">SyntaxExprGhc</a> p</div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type family</span> <a id="t:SyntaxExprGhc" class="def">SyntaxExprGhc</a> (p :: <a href="GHC-Hs-Extension.html#t:Pass" title="GHC.Hs.Extension">Pass</a>) = (r :: <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a>) <span class="keyword">|</span> r -&gt; p <span class="keyword">where ...</span> <a href="src/GHC.Hs.Expr.html#SyntaxExprGhc" class="link">Source</a> <a href="#t:SyntaxExprGhc" class="selflink">#</a></p><div class="subs equations"><p class="caption">Equations</p><table><tr><td class="src"><a href="GHC-Hs-Expr.html#t:SyntaxExprGhc" title="GHC.Hs.Expr">SyntaxExprGhc</a> '<a href="GHC-Hs-Extension.html#v:Parsed" title="GHC.Hs.Extension">Parsed</a> = <a href="GHC-Hs-Extension.html#t:NoExtField" title="GHC.Hs.Extension">NoExtField</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="GHC-Hs-Expr.html#t:SyntaxExprGhc" title="GHC.Hs.Expr">SyntaxExprGhc</a> '<a href="GHC-Hs-Extension.html#v:Renamed" title="GHC.Hs.Extension">Renamed</a> = <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a href="GHC-Hs-Expr.html#t:SyntaxExprGhc" title="GHC.Hs.Expr">SyntaxExprGhc</a> '<a href="GHC-Hs-Extension.html#v:Typechecked" title="GHC.Hs.Extension">Typechecked</a> = <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a></td><td class="doc empty">&nbsp;</td></tr></table></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:SyntaxExprRn" class="def">SyntaxExprRn</a> <a href="src/GHC.Hs.Expr.html#SyntaxExprRn" class="link">Source</a> <a href="#t:SyntaxExprRn" class="selflink">#</a></p><div class="doc"><p>The function to use in rebindable syntax. See Note [NoSyntaxExpr].</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:SyntaxExprRn" class="def">SyntaxExprRn</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:NoSyntaxExprRn" class="def">NoSyntaxExprRn</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:SyntaxExprRn">Instances</h4><details id="i:SyntaxExprRn" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SyntaxExprRn:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a></span> <a href="src/GHC.Hs.Instances.html#line-349" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SyntaxExprRn:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; c <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SyntaxExprRn:Outputable:2"></span> <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a></span> <a href="src/GHC.Hs.Expr.html#line-184" class="link">Source</a> <a href="#t:SyntaxExprRn" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SyntaxExprRn:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:SyntaxExprTc" class="def">SyntaxExprTc</a> <a href="src/GHC.Hs.Expr.html#SyntaxExprTc" class="link">Source</a> <a href="#t:SyntaxExprTc" class="selflink">#</a></p><div class="doc"><p>An expression with wrappers, used for rebindable syntax</p><p>This should desugar to</p><pre>syn_res_wrap $ syn_expr (syn_arg_wraps[0] arg0)
                        (syn_arg_wraps[1] arg1) ...</pre><p>where the actual arguments come from elsewhere in the AST.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:SyntaxExprTc" class="def">SyntaxExprTc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:syn_expr" class="def">syn_expr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:syn_arg_wraps" class="def">syn_arg_wraps</a> :: [<a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:syn_res_wrap" class="def">syn_res_wrap</a> :: <a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:NoSyntaxExprTc" class="def">NoSyntaxExprTc</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:SyntaxExprTc">Instances</h4><details id="i:SyntaxExprTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SyntaxExprTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a></span> <a href="src/GHC.Hs.Instances.html#line-350" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SyntaxExprTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SyntaxExprTc:Outputable:2"></span> <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a></span> <a href="src/GHC.Hs.Expr.html#line-188" class="link">Source</a> <a href="#t:SyntaxExprTc" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SyntaxExprTc:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprTc" title="GHC.Hs.Expr">SyntaxExprTc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:noExpr" class="def">noExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) <a href="src/GHC.Hs.Expr.html#noExpr" class="link">Source</a> <a href="#v:noExpr" class="selflink">#</a></p><div class="doc"><p>This is used for rebindable-syntax pieces that are too polymorphic
 for tcSyntaxOp (trS_fmap and the mzip in ParStmt)</p></div></div><div class="top"><p class="src"><a id="v:noSyntaxExpr" class="def">noSyntaxExpr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) <a href="src/GHC.Hs.Expr.html#noSyntaxExpr" class="link">Source</a> <a href="#v:noSyntaxExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:mkSyntaxExpr" class="def">mkSyntaxExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="src/GHC.Hs.Expr.html#mkSyntaxExpr" class="link">Source</a> <a href="#v:mkSyntaxExpr" class="selflink">#</a></p><div class="doc"><p>Make a 'SyntaxExpr GhcRn' from an expression
 Used only in getMonadFailOp.
 See Note [Monad fail : Rebindable syntax, overloaded strings] in <a href="GHC-Rename-Expr.html">GHC.Rename.Expr</a></p></div></div><div class="top"><p class="src"><a id="v:mkRnSyntaxExpr" class="def">mkRnSyntaxExpr</a> :: <a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a> -&gt; <a href="GHC-Hs-Expr.html#t:SyntaxExprRn" title="GHC.Hs.Expr">SyntaxExprRn</a> <a href="src/GHC.Hs.Expr.html#mkRnSyntaxExpr" class="link">Source</a> <a href="#v:mkRnSyntaxExpr" class="selflink">#</a></p><div class="doc"><p>Make a <code><a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a></code> from a <code><a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a></code> (the &quot;rn&quot; is because this is used in the
 renamer).</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:CmdSyntaxTable" class="def">CmdSyntaxTable</a> p = [(<a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a>, <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> p)] <a href="src/GHC.Hs.Expr.html#CmdSyntaxTable" class="link">Source</a> <a href="#t:CmdSyntaxTable" class="selflink">#</a></p><div class="doc"><p>Command Syntax Table (for Arrow syntax)</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsExpr" class="def">HsExpr</a> p <a href="src/GHC.Hs.Expr.html#HsExpr" class="link">Source</a> <a href="#t:HsExpr" class="selflink">#</a></p><div class="doc"><p>A Haskell expression.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsVar" class="def">HsVar</a> (<a href="GHC-Hs-Extension.html#t:XVar" title="GHC.Hs.Extension">XVar</a> p) (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p))</td><td class="doc"><p>Variable</p></td></tr><tr><td class="src"><a id="v:HsUnboundVar" class="def">HsUnboundVar</a> (<a href="GHC-Hs-Extension.html#t:XUnboundVar" title="GHC.Hs.Extension">XUnboundVar</a> p) <a href="GHC-Types-Name-Occurrence.html#t:OccName" title="GHC.Types.Name.Occurrence">OccName</a></td><td class="doc"><p>Unbound variable; also used for &quot;holes&quot;
   (_ or _x).
 Turned from HsVar to HsUnboundVar by the
   renamer, when it finds an out-of-scope
   variable or hole.
 Turned into HsVar by type checker, to support
   deferred type errors.</p></td></tr><tr><td class="src"><a id="v:HsConLikeOut" class="def">HsConLikeOut</a> (<a href="GHC-Hs-Extension.html#t:XConLikeOut" title="GHC.Hs.Extension">XConLikeOut</a> p) <a href="GHC-Core-ConLike.html#t:ConLike" title="GHC.Core.ConLike">ConLike</a></td><td class="doc"><p>After typechecker only; must be different
 HsVar for pretty printing</p></td></tr><tr><td class="src"><a id="v:HsRecFld" class="def">HsRecFld</a> (<a href="GHC-Hs-Extension.html#t:XRecFld" title="GHC.Hs.Extension">XRecFld</a> p) (<a href="GHC-Hs-Type.html#t:AmbiguousFieldOcc" title="GHC.Hs.Type">AmbiguousFieldOcc</a> p)</td><td class="doc"><p>Variable pointing to record selector
 Not in use after typechecking</p></td></tr><tr><td class="src"><a id="v:HsOverLabel" class="def">HsOverLabel</a> (<a href="GHC-Hs-Extension.html#t:XOverLabel" title="GHC.Hs.Extension">XOverLabel</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)) <a href="GHC-Data-FastString.html#t:FastString" title="GHC.Data.FastString">FastString</a></td><td class="doc"><p>Overloaded label (Note [Overloaded labels] in GHC.OverloadedLabels)
   <code>Just id</code> means <code>RebindableSyntax</code> is in use, and gives the id of the
   in-scope <code>fromLabel</code>.
   NB: Not in use after typechecking</p></td></tr><tr><td class="src"><a id="v:HsIPVar" class="def">HsIPVar</a> (<a href="GHC-Hs-Extension.html#t:XIPVar" title="GHC.Hs.Extension">XIPVar</a> p) <a href="GHC-Hs-Type.html#t:HsIPName" title="GHC.Hs.Type">HsIPName</a></td><td class="doc"><p>Implicit parameter (not in use after typechecking)</p></td></tr><tr><td class="src"><a id="v:HsOverLit" class="def">HsOverLit</a> (<a href="GHC-Hs-Extension.html#t:XOverLitE" title="GHC.Hs.Extension">XOverLitE</a> p) (<a href="GHC-Hs-Lit.html#t:HsOverLit" title="GHC.Hs.Lit">HsOverLit</a> p)</td><td class="doc"><p>Overloaded literals</p></td></tr><tr><td class="src"><a id="v:HsLit" class="def">HsLit</a> (<a href="GHC-Hs-Extension.html#t:XLitE" title="GHC.Hs.Extension">XLitE</a> p) (<a href="GHC-Hs-Lit.html#t:HsLit" title="GHC.Hs.Lit">HsLit</a> p)</td><td class="doc"><p>Simple (non-overloaded) literals</p></td></tr><tr><td class="src"><a id="v:HsLam" class="def">HsLam</a> (<a href="GHC-Hs-Extension.html#t:XLam" title="GHC.Hs.Extension">XLam</a> p) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p))</td><td class="doc"><p>Lambda abstraction. Currently always a single match</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLam" title="GHC.Parser.Annotation">AnnLam</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnRarrow" title="GHC.Parser.Annotation">AnnRarrow</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:HsLamCase" class="def">HsLamCase</a> (<a href="GHC-Hs-Extension.html#t:XLamCase" title="GHC.Hs.Extension">XLamCase</a> p) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p))</td><td class="doc"><p>Lambda-case</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLam" title="GHC.Parser.Annotation">AnnLam</a></code>,
           <code><a href="GHC-Parser-Annotation.html#v:AnnCase" title="GHC.Parser.Annotation">AnnCase</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,
           <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsApp" class="def">HsApp</a> (<a href="GHC-Hs-Extension.html#t:XApp" title="GHC.Hs.Extension">XApp</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc"><p>Application</p></td></tr><tr><td class="src"><a id="v:HsAppType" class="def">HsAppType</a> (<a href="GHC-Hs-Extension.html#t:XAppTypeE" title="GHC.Hs.Extension">XAppTypeE</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Type.html#t:LHsWcType" title="GHC.Hs.Type">LHsWcType</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> p))</td><td class="doc"><p>Visible type application</p><p>Explicit type argument; e.g  f @Int x y
 NB: Has wildcards, but no implicit quantification</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnAt" title="GHC.Parser.Annotation">AnnAt</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:OpApp" class="def">OpApp</a> (<a href="GHC-Hs-Extension.html#t:XOpApp" title="GHC.Hs.Extension">XOpApp</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc"><p>Operator applications:
 NB Bracketed ops such as (+) come out as Vars.</p></td></tr><tr><td class="src"><a id="v:NegApp" class="def">NegApp</a> (<a href="GHC-Hs-Extension.html#t:XNegApp" title="GHC.Hs.Extension">XNegApp</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> p)</td><td class="doc"><p>Negation operator. Contains the negated expression and the name
 of <code><a href="GHC-Prelude.html#v:negate" title="GHC.Prelude">negate</a></code></p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnMinus" title="GHC.Parser.Annotation">AnnMinus</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsPar" class="def">HsPar</a></td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'('</code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>')'</code></li></ul></td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src">(<a href="GHC-Hs-Extension.html#t:XPar" title="GHC.Hs.Extension">XPar</a> p)</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src">(<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</dfn><div class="doc"><p>Parenthesised expr; see Note [Parens in HsSyn]</p></div></li></ul></div></td></tr><tr><td class="src"><a id="v:SectionL" class="def">SectionL</a> (<a href="GHC-Hs-Extension.html#t:XSectionL" title="GHC.Hs.Extension">XSectionL</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:SectionR" class="def">SectionR</a> (<a href="GHC-Hs-Extension.html#t:XSectionR" title="GHC.Hs.Extension">XSectionR</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:ExplicitTuple" class="def">ExplicitTuple</a> (<a href="GHC-Hs-Extension.html#t:XExplicitTuple" title="GHC.Hs.Extension">XExplicitTuple</a> p) [<a href="GHC-Hs-Expr.html#t:LHsTupArg" title="GHC.Hs.Expr">LHsTupArg</a> p] <a href="GHC-Types-Basic.html#t:Boxity" title="GHC.Types.Basic">Boxity</a></td><td class="doc"><p>Used for explicit tuples and sections thereof</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code></li></ul></td></tr><tr><td class="src"><a id="v:ExplicitSum" class="def">ExplicitSum</a> (<a href="GHC-Hs-Extension.html#t:XExplicitSum" title="GHC.Hs.Extension">XExplicitSum</a> p) <a href="GHC-Types-Basic.html#t:ConTag" title="GHC.Types.Basic">ConTag</a> <a href="GHC-Types-Basic.html#t:Arity" title="GHC.Types.Basic">Arity</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc"><p>Used for unboxed sum types</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'(#'</code>,
          <code><a href="GHC-Parser-Annotation.html#v:AnnVbar" title="GHC.Parser.Annotation">AnnVbar</a></code>, <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'#)'</code>,</li></ul><p>There will be multiple <code><a href="GHC-Parser-Annotation.html#v:AnnVbar" title="GHC.Parser.Annotation">AnnVbar</a></code>, (1 - alternative) before
  the expression, (arity - alternative) after it</p></td></tr><tr><td class="src"><a id="v:HsCase" class="def">HsCase</a> (<a href="GHC-Hs-Extension.html#t:XCase" title="GHC.Hs.Extension">XCase</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p))</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnCase" title="GHC.Parser.Annotation">AnnCase</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnOf" title="GHC.Parser.Annotation">AnnOf</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code></li></ul></td></tr><tr><td class="src"><a id="v:HsIf" class="def">HsIf</a> (<a href="GHC-Hs-Extension.html#t:XIf" title="GHC.Hs.Extension">XIf</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnIf" title="GHC.Parser.Annotation">AnnIf</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnThen" title="GHC.Parser.Annotation">AnnThen</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnElse" title="GHC.Parser.Annotation">AnnElse</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:HsMultiIf" class="def">HsMultiIf</a> (<a href="GHC-Hs-Extension.html#t:XMultiIf" title="GHC.Hs.Extension">XMultiIf</a> p) [<a href="GHC-Hs-Expr.html#t:LGRHS" title="GHC.Hs.Expr">LGRHS</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)]</td><td class="doc"><p>Multi-way if</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnIf" title="GHC.Parser.Annotation">AnnIf</a></code>
       <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:HsLet" class="def">HsLet</a> (<a href="GHC-Hs-Extension.html#t:XLet" title="GHC.Hs.Extension">XLet</a> p) (<a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc"><p>let(rec)</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLet" title="GHC.Parser.Annotation">AnnLet</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code>,<code><a href="GHC-Parser-Annotation.html#v:AnnIn" title="GHC.Parser.Annotation">AnnIn</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsDo" class="def">HsDo</a> (<a href="GHC-Hs-Extension.html#t:XDo" title="GHC.Hs.Extension">XDo</a> p) (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> p])</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnDo" title="GHC.Parser.Annotation">AnnDo</a></code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>, <code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnVbar" title="GHC.Parser.Annotation">AnnVbar</a></code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code></li></ul></td></tr><tr><td class="src"><a id="v:ExplicitList" class="def">ExplicitList</a> (<a href="GHC-Hs-Extension.html#t:XExplicitList" title="GHC.Hs.Extension">XExplicitList</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> p)) [<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p]</td><td class="doc"><p>Syntactic list: [a,b,c,...]</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'['</code>,
              <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>']'</code></li></ul></td></tr><tr><td class="src"><a id="v:RecordCon" class="def">RecordCon</a></td><td class="doc"><p>Record construction</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnDotdot" title="GHC.Parser.Annotation">AnnDotdot</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code></li></ul></td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:rcon_ext" class="def">rcon_ext</a> :: <a href="GHC-Hs-Extension.html#t:XRecordCon" title="GHC.Hs.Extension">XRecordCon</a> p</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rcon_con_name" class="def">rcon_con_name</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rcon_flds" class="def">rcon_flds</a> :: <a href="GHC-Hs-Expr.html#t:HsRecordBinds" title="GHC.Hs.Expr">HsRecordBinds</a> p</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:RecordUpd" class="def">RecordUpd</a></td><td class="doc"><p>Record update</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnDotdot" title="GHC.Parser.Annotation">AnnDotdot</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code></li></ul></td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:rupd_ext" class="def">rupd_ext</a> :: <a href="GHC-Hs-Extension.html#t:XRecordUpd" title="GHC.Hs.Extension">XRecordUpd</a> p</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rupd_expr" class="def">rupd_expr</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rupd_flds" class="def">rupd_flds</a> :: [<a href="GHC-Hs-Pat.html#t:LHsRecUpdField" title="GHC.Hs.Pat">LHsRecUpdField</a> p]</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:ExprWithTySig" class="def">ExprWithTySig</a> (<a href="GHC-Hs-Extension.html#t:XExprWithTySig" title="GHC.Hs.Extension">XExprWithTySig</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) (<a href="GHC-Hs-Type.html#t:LHsSigWcType" title="GHC.Hs.Type">LHsSigWcType</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> p))</td><td class="doc"><p>Expression with an explicit type signature. <code>e :: type</code></p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnDcolon" title="GHC.Parser.Annotation">AnnDcolon</a></code></li></ul></td></tr><tr><td class="src"><a id="v:ArithSeq" class="def">ArithSeq</a> (<a href="GHC-Hs-Extension.html#t:XArithSeq" title="GHC.Hs.Extension">XArithSeq</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> p)) (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> p)</td><td class="doc"><p>Arithmetic sequence</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'['</code>,
              <code><a href="GHC-Parser-Annotation.html#v:AnnComma" title="GHC.Parser.Annotation">AnnComma</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnDotdot" title="GHC.Parser.Annotation">AnnDotdot</a></code>,
              <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>']'</code></li></ul></td></tr><tr><td class="src"><a id="v:HsBracket" class="def">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:XBracket" title="GHC.Hs.Extension">XBracket</a> p) (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> p)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnOpenE" title="GHC.Parser.Annotation">AnnOpenE</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnOpenEQ" title="GHC.Parser.Annotation">AnnOpenEQ</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnCloseQ" title="GHC.Parser.Annotation">AnnCloseQ</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsRnBracketOut" class="def">HsRnBracketOut</a> (<a href="GHC-Hs-Extension.html#t:XRnBracketOut" title="GHC.Hs.Extension">XRnBracketOut</a> p) (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) [<a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a>]</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsTcBracketOut" class="def">HsTcBracketOut</a> (<a href="GHC-Hs-Extension.html#t:XTcBracketOut" title="GHC.Hs.Extension">XTcBracketOut</a> p) (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Tc-Types-Evidence.html#t:QuoteWrapper" title="GHC.Tc.Types.Evidence">QuoteWrapper</a>) (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) [<a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a>]</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsSpliceE" class="def">HsSpliceE</a> (<a href="GHC-Hs-Extension.html#t:XSpliceE" title="GHC.Hs.Extension">XSpliceE</a> p) (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> p)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsProc" class="def">HsProc</a> (<a href="GHC-Hs-Extension.html#t:XProc" title="GHC.Hs.Extension">XProc</a> p) (<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> p) (<a href="GHC-Hs-Expr.html#t:LHsCmdTop" title="GHC.Hs.Expr">LHsCmdTop</a> p)</td><td class="doc"><p><code>proc</code> notation for Arrows</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnProc" title="GHC.Parser.Annotation">AnnProc</a></code>,
          <code><a href="GHC-Parser-Annotation.html#v:AnnRarrow" title="GHC.Parser.Annotation">AnnRarrow</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsStatic" class="def">HsStatic</a> (<a href="GHC-Hs-Extension.html#t:XStatic" title="GHC.Hs.Extension">XStatic</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnStatic" title="GHC.Parser.Annotation">AnnStatic</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:HsTick" class="def">HsTick</a> (<a href="GHC-Hs-Extension.html#t:XTick" title="GHC.Hs.Extension">XTick</a> p) (<a href="GHC-Core.html#t:Tickish" title="GHC.Core">Tickish</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsBinTick" class="def">HsBinTick</a> (<a href="GHC-Hs-Extension.html#t:XBinTick" title="GHC.Hs.Extension">XBinTick</a> p) <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsPragE" class="def">HsPragE</a> (<a href="GHC-Hs-Extension.html#t:XPragE" title="GHC.Hs.Extension">XPragE</a> p) (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:XExpr" class="def">XExpr</a> !(<a href="GHC-Hs-Extension.html#t:XXExpr" title="GHC.Hs.Extension">XXExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsExpr">Instances</h4><details id="i:HsExpr" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-258" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-259" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-260" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:DisambECP:4"></span> <a href="GHC-Parser-PostProcess.html#t:DisambECP" title="GHC.Parser.PostProcess">DisambECP</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1902" class="link">Source</a> <a href="#t:DisambECP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:DisambECP:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:Body" title="GHC.Parser.PostProcess">Body</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) :: <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a> -&gt; <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a> <a href="src/GHC.Parser.PostProcess.html#Body" class="link">Source</a> <a href="#t:Body" class="selflink">#</a></p><p class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="src/GHC.Parser.PostProcess.html#InfixOp" class="link">Source</a> <a href="#t:InfixOp" class="selflink">#</a></p><p class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="src/GHC.Parser.PostProcess.html#FunArg" class="link">Source</a> <a href="#t:FunArg" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ecpFromCmd-39-">ecpFromCmd'</a> :: <a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#ecpFromCmd%27" class="link">Source</a> <a href="#v:ecpFromCmd-39-" class="selflink">#</a></p><p class="src"><a href="#v:ecpFromExp-39-">ecpFromExp'</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#ecpFromExp%27" class="link">Source</a> <a href="#v:ecpFromExp-39-" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLamPV">mkHsLamPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLamPV" class="link">Source</a> <a href="#v:mkHsLamPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLetPV">mkHsLetPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLetPV" class="link">Source</a> <a href="#v:mkHsLetPV" class="selflink">#</a></p><p class="src"><a href="#v:superInfixOp">superInfixOp</a> :: (<a href="GHC-Parser-PostProcess.html#t:DisambInfixOp" title="GHC.Parser.PostProcess">DisambInfixOp</a> (<a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) =&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#superInfixOp" class="link">Source</a> <a href="#v:superInfixOp" class="selflink">#</a></p><p class="src"><a href="#v:mkHsOpAppPV">mkHsOpAppPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsOpAppPV" class="link">Source</a> <a href="#v:mkHsOpAppPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsCasePV">mkHsCasePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsCasePV" class="link">Source</a> <a href="#v:mkHsCasePV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLamCasePV">mkHsLamCasePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLamCasePV" class="link">Source</a> <a href="#v:mkHsLamCasePV" class="selflink">#</a></p><p class="src"><a href="#v:superFunArg">superFunArg</a> :: (<a href="GHC-Parser-PostProcess.html#t:DisambECP" title="GHC.Parser.PostProcess">DisambECP</a> (<a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) =&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#superFunArg" class="link">Source</a> <a href="#v:superFunArg" class="selflink">#</a></p><p class="src"><a href="#v:mkHsAppPV">mkHsAppPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsAppPV" class="link">Source</a> <a href="#v:mkHsAppPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsAppTypePV">mkHsAppTypePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Hs-Type.html#t:LHsType" title="GHC.Hs.Type">LHsType</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsAppTypePV" class="link">Source</a> <a href="#v:mkHsAppTypePV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsIfPV">mkHsIfPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsIfPV" class="link">Source</a> <a href="#v:mkHsIfPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsDoPV">mkHsDoPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))] -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsDoPV" class="link">Source</a> <a href="#v:mkHsDoPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsParPV">mkHsParPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsParPV" class="link">Source</a> <a href="#v:mkHsParPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsVarPV">mkHsVarPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> <a href="GHC-Types-Name-Reader.html#t:RdrName" title="GHC.Types.Name.Reader">RdrName</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsVarPV" class="link">Source</a> <a href="#v:mkHsVarPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLitPV">mkHsLitPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Lit.html#t:HsLit" title="GHC.Hs.Lit">HsLit</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLitPV" class="link">Source</a> <a href="#v:mkHsLitPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsOverLitPV">mkHsOverLitPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Lit.html#t:HsOverLit" title="GHC.Hs.Lit">HsOverLit</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsOverLitPV" class="link">Source</a> <a href="#v:mkHsOverLitPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsWildCardPV">mkHsWildCardPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsWildCardPV" class="link">Source</a> <a href="#v:mkHsWildCardPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsTySigPV">mkHsTySigPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Hs-Type.html#t:LHsType" title="GHC.Hs.Type">LHsType</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsTySigPV" class="link">Source</a> <a href="#v:mkHsTySigPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsExplicitListPV">mkHsExplicitListPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; [<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)] -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsExplicitListPV" class="link">Source</a> <a href="#v:mkHsExplicitListPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsSplicePV">mkHsSplicePV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsSplicePV" class="link">Source</a> <a href="#v:mkHsSplicePV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsRecordPV">mkHsRecordPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; ([<a href="GHC-Hs-Pat.html#t:LHsRecField" title="GHC.Hs.Pat">LHsRecField</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))], <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsRecordPV" class="link">Source</a> <a href="#v:mkHsRecordPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsNegAppPV">mkHsNegAppPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsNegAppPV" class="link">Source</a> <a href="#v:mkHsNegAppPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsSectionR_PV">mkHsSectionR_PV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsSectionR_PV" class="link">Source</a> <a href="#v:mkHsSectionR_PV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsViewPatPV">mkHsViewPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsViewPatPV" class="link">Source</a> <a href="#v:mkHsViewPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsAsPatPV">mkHsAsPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> <a href="GHC-Types-Name-Reader.html#t:RdrName" title="GHC.Types.Name.Reader">RdrName</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsAsPatPV" class="link">Source</a> <a href="#v:mkHsAsPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLazyPatPV">mkHsLazyPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLazyPatPV" class="link">Source</a> <a href="#v:mkHsLazyPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsBangPatPV">mkHsBangPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsBangPatPV" class="link">Source</a> <a href="#v:mkHsBangPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkSumOrTuplePV">mkSumOrTuplePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-Basic.html#t:Boxity" title="GHC.Types.Basic">Boxity</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:SumOrTuple" title="GHC.Parser.PostProcess">SumOrTuple</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkSumOrTuplePV" class="link">Source</a> <a href="#v:mkSumOrTuplePV" class="selflink">#</a></p><p class="src"><a href="#v:rejectPragmaPV">rejectPragmaPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> () <a href="src/GHC.Parser.PostProcess.html#rejectPragmaPV" class="link">Source</a> <a href="#v:rejectPragmaPV" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:DisambInfixOp:5"></span> <a href="GHC-Parser-PostProcess.html#t:DisambInfixOp" title="GHC.Parser.PostProcess">DisambInfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1699" class="link">Source</a> <a href="#t:DisambInfixOp" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:DisambInfixOp:5"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:mkHsVarOpPV">mkHsVarOpPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> <a href="GHC-Types-Name-Reader.html#t:RdrName" title="GHC.Types.Name.Reader">RdrName</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsVarOpPV" class="link">Source</a> <a href="#v:mkHsVarOpPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsConOpPV">mkHsConOpPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> <a href="GHC-Types-Name-Reader.html#t:RdrName" title="GHC.Types.Name.Reader">RdrName</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsConOpPV" class="link">Source</a> <a href="#v:mkHsConOpPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsInfixHolePV">mkHsInfixHolePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsInfixHolePV" class="link">Source</a> <a href="#v:mkHsInfixHolePV" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:Outputable:6"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-1031" class="link">Source</a> <a href="#t:HsExpr" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:Outputable:6"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:Body:7"></span> <span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:Body" title="GHC.Parser.PostProcess">Body</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1903" class="link">Source</a> <a href="#t:Body" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:Body:7"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:Body" title="GHC.Parser.PostProcess">Body</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:FunArg:8"></span> <span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1918" class="link">Source</a> <a href="#t:FunArg" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:FunArg:8"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpr:InfixOp:9"></span> <span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1912" class="link">Source</a> <a href="#t:InfixOp" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpr:InfixOp:9"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:RecordConTc" class="def">RecordConTc</a> <a href="src/GHC.Hs.Expr.html#RecordConTc" class="link">Source</a> <a href="#t:RecordConTc" class="selflink">#</a></p><div class="doc"><p>Extra data fields for a <code><a href="GHC-Hs-Expr.html#v:RecordCon" title="GHC.Hs.Expr">RecordCon</a></code>, added by the type checker</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:RecordConTc" class="def">RecordConTc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:rcon_con_like" class="def">rcon_con_like</a> :: <a href="GHC-Core-ConLike.html#t:ConLike" title="GHC.Core.ConLike">ConLike</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rcon_con_expr" class="def">rcon_con_expr</a> :: <a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:RecordConTc">Instances</h4><details id="i:RecordConTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:RecordConTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a></span> <a href="src/GHC.Hs.Instances.html#line-344" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:RecordConTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecordConTc" title="GHC.Hs.Expr">RecordConTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:RecordUpdTc" class="def">RecordUpdTc</a> <a href="src/GHC.Hs.Expr.html#RecordUpdTc" class="link">Source</a> <a href="#t:RecordUpdTc" class="selflink">#</a></p><div class="doc"><p>Extra data fields for a <code><a href="GHC-Hs-Expr.html#v:RecordUpd" title="GHC.Hs.Expr">RecordUpd</a></code>, added by the type checker</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:RecordUpdTc" class="def">RecordUpdTc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:rupd_cons" class="def">rupd_cons</a> :: [<a href="GHC-Core-ConLike.html#t:ConLike" title="GHC.Core.ConLike">ConLike</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rupd_in_tys" class="def">rupd_in_tys</a> :: [<a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rupd_out_tys" class="def">rupd_out_tys</a> :: [<a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:rupd_wrap" class="def">rupd_wrap</a> :: <a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:RecordUpdTc">Instances</h4><details id="i:RecordUpdTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:RecordUpdTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a></span> <a href="src/GHC.Hs.Instances.html#line-345" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:RecordUpdTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecordUpdTc" title="GHC.Hs.Expr">RecordUpdTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsWrap" class="def">HsWrap</a> hs_syn <a href="src/GHC.Hs.Expr.html#HsWrap" class="link">Source</a> <a href="#t:HsWrap" class="selflink">#</a></p><div class="doc"><p>HsWrap appears only in typechecker output
 Invariant: The contained Expr is *NOT* itself an HsWrap.
 See Note [Detecting forced eta expansion] in <a href="GHC-HsToCore-Expr.html">GHC.HsToCore.Expr</a>.
 This invariant is maintained by <code><a href="GHC-Hs-Utils.html#v:mkHsWrap" title="GHC.Hs.Utils">mkHsWrap</a></code>.
 hs_syn is something like HsExpr or HsCmd</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsWrap" class="def">HsWrap</a> <a href="GHC-Tc-Types-Evidence.html#t:HsWrapper" title="GHC.Tc.Types.Evidence">HsWrapper</a> (hs_syn <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsWrap">Instances</h4><details id="i:HsWrap" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsWrap:Data:1"></span> (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (hs_syn <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>), <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> hs_syn) =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn)</span> <a href="src/GHC.Hs.Expr.html#line-591" class="link">Source</a> <a href="#t:HsWrap" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsWrap:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; c (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; m (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; m (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn -&gt; m (<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> hs_syn) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:XXExprGhcTc" class="def">XXExprGhcTc</a> <a href="src/GHC.Hs.Expr.html#XXExprGhcTc" class="link">Source</a> <a href="#t:XXExprGhcTc" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:WrapExpr" class="def">WrapExpr</a> !(<a href="GHC-Hs-Expr.html#t:HsWrap" title="GHC.Hs.Expr">HsWrap</a> <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a>)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:ExpansionExpr" class="def">ExpansionExpr</a> !(<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>))</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:XXExprGhcTc">Instances</h4><details id="i:XXExprGhcTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:XXExprGhcTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a></span> <a href="src/GHC.Hs.Instances.html#line-472" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:XXExprGhcTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XXExprGhcTc" title="GHC.Hs.Expr">XXExprGhcTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsExpansion" class="def">HsExpansion</a> a b <a href="src/GHC.Hs.Expr.html#HsExpansion" class="link">Source</a> <a href="#t:HsExpansion" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsExpanded" class="def">HsExpanded</a> a b</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsExpansion">Instances</h4><details id="i:HsExpansion" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpansion:Data:1"></span> (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> a, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b) =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b)</span> <a href="src/GHC.Hs.Expr.html#line-805" class="link">Source</a> <a href="#t:HsExpansion" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsExpansion:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b0. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b0) -&gt; d -&gt; c b0) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b0 r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b0 =&gt; c (b0 -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b0. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b0 =&gt; b0 -&gt; b0) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; m (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsExpansion:Outputable:2"></span> (<a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> a, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> b) =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b)</span> <a href="src/GHC.Hs.Expr.html#line-822" class="link">Source</a> <a href="#t:HsExpansion" class="selflink">#</a></td><td class="doc"><p>Just print the original expression (the <code>a</code>).</p></td></tr><tr><td colspan="2"><details id="i:id:HsExpansion:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:mkExpanded" class="def">mkExpanded</a> <a href="src/GHC.Hs.Expr.html#mkExpanded" class="link">Source</a> <a href="#v:mkExpanded" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a> a b -&gt; b)</td><td class="doc"><p>XExpr, XCmd, ...</p></td></tr><tr><td class="src">-&gt; a</td><td class="doc"><p>source expression (<code><a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a></code>)</p></td></tr><tr><td class="src">-&gt; b</td><td class="doc"><p>&quot;desugared&quot; expression
   (<code><a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></code>)</p></td></tr><tr><td class="src">-&gt; b</td><td class="doc"><p>suitably wrapped
   <code><a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a></code></p></td></tr></table></div><div class="doc"><p>Build a &quot;wrapped&quot; <code><a href="GHC-Hs-Expr.html#t:HsExpansion" title="GHC.Hs.Expr">HsExpansion</a></code> out of an extension constructor,
   and the two components of the expansion: original and desugared
   expressions.</p><p>See Note [Rebindable Syntax and HsExpansion] above for more details.</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsPragE" class="def">HsPragE</a> p <a href="src/GHC.Hs.Expr.html#HsPragE" class="link">Source</a> <a href="#t:HsPragE" class="selflink">#</a></p><div class="doc"><p>A pragma, written as {-# ... #-}, that may appear within an expression.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsPragSCC" class="def">HsPragSCC</a> (<a href="GHC-Hs-Extension.html#t:XSCC" title="GHC.Hs.Extension">XSCC</a> p) <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a> <a href="GHC-Types-Basic.html#t:StringLiteral" title="GHC.Types.Basic">StringLiteral</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsPragTick" class="def">HsPragTick</a> (<a href="GHC-Hs-Extension.html#t:XTickPragma" title="GHC.Hs.Extension">XTickPragma</a> p) <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a> (<a href="GHC-Types-Basic.html#t:StringLiteral" title="GHC.Types.Basic">StringLiteral</a>, (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>), (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>)) ((<a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>, <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>), (<a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>, <a href="GHC-Types-Basic.html#t:SourceText" title="GHC.Types.Basic">SourceText</a>))</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{-# GENERATED'</code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnVal" title="GHC.Parser.Annotation">AnnVal</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnVal" title="GHC.Parser.Annotation">AnnVal</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnColon" title="GHC.Parser.Annotation">AnnColon</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnVal" title="GHC.Parser.Annotation">AnnVal</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnMinus" title="GHC.Parser.Annotation">AnnMinus</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnVal" title="GHC.Parser.Annotation">AnnVal</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnColon" title="GHC.Parser.Annotation">AnnColon</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnVal" title="GHC.Parser.Annotation">AnnVal</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'#-}'</code></li></ul></td></tr><tr><td class="src"><a id="v:XHsPragE" class="def">XHsPragE</a> !(<a href="GHC-Hs-Extension.html#t:XXPragE" title="GHC.Hs.Extension">XXPragE</a> p)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsPragE">Instances</h4><details id="i:HsPragE" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsPragE:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-253" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsPragE:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsPragE:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-254" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsPragE:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsPragE:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-255" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsPragE:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsPragE:Outputable:4"></span> <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-1394" class="link">Source</a> <a href="#t:HsPragE" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsPragE:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsPragE" title="GHC.Hs.Expr">HsPragE</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LHsTupArg" class="def">LHsTupArg</a> id = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> id) <a href="src/GHC.Hs.Expr.html#LHsTupArg" class="link">Source</a> <a href="#t:LHsTupArg" class="selflink">#</a></p><div class="doc"><p>Located Haskell Tuple Argument</p><p><code><a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a></code> is used for tuple sections
 <code>(,a,)</code> is represented by
 <code>ExplicitTuple [Missing ty1, Present a, Missing ty3]</code>
 Which in turn stands for <code>(x:ty1 y:ty2. (x,a,y))</code></p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsTupArg" class="def">HsTupArg</a> id <a href="src/GHC.Hs.Expr.html#HsTupArg" class="link">Source</a> <a href="#t:HsTupArg" class="selflink">#</a></p><div class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnComma" title="GHC.Parser.Annotation">AnnComma</a></code></li></ul><p>Haskell Tuple Argument</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Present" class="def">Present</a> (<a href="GHC-Hs-Extension.html#t:XPresent" title="GHC.Hs.Extension">XPresent</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc"><p>The argument</p></td></tr><tr><td class="src"><a id="v:Missing" class="def">Missing</a> (<a href="GHC-Hs-Extension.html#t:XMissing" title="GHC.Hs.Extension">XMissing</a> id)</td><td class="doc"><p>The argument is missing, but this is its type</p></td></tr><tr><td class="src"><a id="v:XTupArg" class="def">XTupArg</a> !(<a href="GHC-Hs-Extension.html#t:XXTupArg" title="GHC.Hs.Extension">XXTupArg</a> id)</td><td class="doc"><p>Note [Trees that Grow] extension point</p></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsTupArg">Instances</h4><details id="i:HsTupArg" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsTupArg:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-263" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsTupArg:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsTupArg:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-264" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsTupArg:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsTupArg:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-265" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsTupArg:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsTupArg" title="GHC.Hs.Expr">HsTupArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:tupArgPresent" class="def">tupArgPresent</a> :: <a href="GHC-Hs-Expr.html#t:LHsTupArg" title="GHC.Hs.Expr">LHsTupArg</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#tupArgPresent" class="link">Source</a> <a href="#v:tupArgPresent" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprLExpr" class="def">pprLExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprLExpr" class="link">Source</a> <a href="#v:pprLExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprExpr" class="def">pprExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprExpr" class="link">Source</a> <a href="#v:pprExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isQuietHsExpr" class="def">isQuietHsExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isQuietHsExpr" class="link">Source</a> <a href="#v:isQuietHsExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprBinds" class="def">pprBinds</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR) =&gt; <a href="GHC-Hs-Binds.html#t:HsLocalBindsLR" title="GHC.Hs.Binds">HsLocalBindsLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprBinds" class="link">Source</a> <a href="#v:pprBinds" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_lexpr" class="def">ppr_lexpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_lexpr" class="link">Source</a> <a href="#v:ppr_lexpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_expr" class="def">ppr_expr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_expr" class="link">Source</a> <a href="#v:ppr_expr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_infix_expr" class="def">ppr_infix_expr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_infix_expr" class="link">Source</a> <a href="#v:ppr_infix_expr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_apps" class="def">ppr_apps</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; [<a href="GHC-Prelude.html#t:Either" title="GHC.Prelude">Either</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)) (<a href="GHC-Hs-Type.html#t:LHsWcType" title="GHC.Hs.Type">LHsWcType</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)))] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_apps" class="link">Source</a> <a href="#v:ppr_apps" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprExternalSrcLoc" class="def">pprExternalSrcLoc</a> :: (<a href="GHC-Types-Basic.html#t:StringLiteral" title="GHC.Types.Basic">StringLiteral</a>, (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>), (<a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>, <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a>)) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprExternalSrcLoc" class="link">Source</a> <a href="#v:pprExternalSrcLoc" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprDebugParendExpr" class="def">pprDebugParendExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprDebugParendExpr" class="link">Source</a> <a href="#v:pprDebugParendExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprParendLExpr" class="def">pprParendLExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprParendLExpr" class="link">Source</a> <a href="#v:pprParendLExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprParendExpr" class="def">pprParendExpr</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprParendExpr" class="link">Source</a> <a href="#v:pprParendExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:hsExprNeedsParens" class="def">hsExprNeedsParens</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#hsExprNeedsParens" class="link">Source</a> <a href="#v:hsExprNeedsParens" class="selflink">#</a></p><div class="doc"><p><code><code><a href="GHC-Hs-Expr.html#v:hsExprNeedsParens" title="GHC.Hs.Expr">hsExprNeedsParens</a></code> p e</code> returns <code><a href="GHC-Prelude.html#v:True" title="GHC.Prelude">True</a></code> if the expression <code>e</code> needs
 parentheses under precedence <code>p</code>.</p></div></div><div class="top"><p class="src"><a id="v:parenthesizeHsExpr" class="def">parenthesizeHsExpr</a> :: <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Types-Basic.html#t:PprPrec" title="GHC.Types.Basic">PprPrec</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) <a href="src/GHC.Hs.Expr.html#parenthesizeHsExpr" class="link">Source</a> <a href="#v:parenthesizeHsExpr" class="selflink">#</a></p><div class="doc"><p><code><code><a href="GHC-Hs-Expr.html#v:parenthesizeHsExpr" title="GHC.Hs.Expr">parenthesizeHsExpr</a></code> p e</code> checks if <code><code><a href="GHC-Hs-Expr.html#v:hsExprNeedsParens" title="GHC.Hs.Expr">hsExprNeedsParens</a></code> p e</code> is true,
 and if so, surrounds <code>e</code> with an <code><a href="GHC-Hs-Expr.html#v:HsPar" title="GHC.Hs.Expr">HsPar</a></code>. Otherwise, it simply returns <code>e</code>.</p></div></div><div class="top"><p class="src"><a id="v:stripParensLHsExpr" class="def">stripParensLHsExpr</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) <a href="src/GHC.Hs.Expr.html#stripParensLHsExpr" class="link">Source</a> <a href="#v:stripParensLHsExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:stripParensHsExpr" class="def">stripParensHsExpr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) <a href="src/GHC.Hs.Expr.html#stripParensHsExpr" class="link">Source</a> <a href="#v:stripParensHsExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isAtomicHsExpr" class="def">isAtomicHsExpr</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:IsPass" title="GHC.Hs.Extension">IsPass</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isAtomicHsExpr" class="link">Source</a> <a href="#v:isAtomicHsExpr" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LHsCmd" class="def">LHsCmd</a> id = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> id) <a href="src/GHC.Hs.Expr.html#LHsCmd" class="link">Source</a> <a href="#t:LHsCmd" class="selflink">#</a></p><div class="doc"><p>Located Haskell Command (for arrow syntax)</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsCmd" class="def">HsCmd</a> id <a href="src/GHC.Hs.Expr.html#HsCmd" class="link">Source</a> <a href="#t:HsCmd" class="selflink">#</a></p><div class="doc"><p>Haskell Command (e.g. a &quot;statement&quot; in an Arrow proc block)</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsCmdArrApp" class="def">HsCmdArrApp</a> (<a href="GHC-Hs-Extension.html#t:XCmdArrApp" title="GHC.Hs.Extension">XCmdArrApp</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:Annlarrowtail" title="GHC.Parser.Annotation">Annlarrowtail</a></code>,
          <code><a href="GHC-Parser-Annotation.html#v:Annrarrowtail" title="GHC.Parser.Annotation">Annrarrowtail</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnLarrowtail" title="GHC.Parser.Annotation">AnnLarrowtail</a></code>,
          <code><a href="GHC-Parser-Annotation.html#v:AnnRarrowtail" title="GHC.Parser.Annotation">AnnRarrowtail</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsCmdArrForm" class="def">HsCmdArrForm</a> (<a href="GHC-Hs-Extension.html#t:XCmdArrForm" title="GHC.Hs.Extension">XCmdArrForm</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="GHC-Types-Basic.html#t:LexicalFixity" title="GHC.Types.Basic">LexicalFixity</a> (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Types-Basic.html#t:Fixity" title="GHC.Types.Basic">Fixity</a>) [<a href="GHC-Hs-Expr.html#t:LHsCmdTop" title="GHC.Hs.Expr">LHsCmdTop</a> id]</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpenB" title="GHC.Parser.Annotation">AnnOpenB</a></code> <code>'(|'</code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnCloseB" title="GHC.Parser.Annotation">AnnCloseB</a></code> <code>'|)'</code></li></ul></td></tr><tr><td class="src"><a id="v:HsCmdApp" class="def">HsCmdApp</a> (<a href="GHC-Hs-Extension.html#t:XCmdApp" title="GHC.Hs.Extension">XCmdApp</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsCmdLam" class="def">HsCmdLam</a> (<a href="GHC-Hs-Extension.html#t:XCmdLam" title="GHC.Hs.Extension">XCmdLam</a> id) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id))</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLam" title="GHC.Parser.Annotation">AnnLam</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnRarrow" title="GHC.Parser.Annotation">AnnRarrow</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:HsCmdPar" class="def">HsCmdPar</a> (<a href="GHC-Hs-Extension.html#t:XCmdPar" title="GHC.Hs.Extension">XCmdPar</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'('</code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>')'</code></li></ul></td></tr><tr><td class="src"><a id="v:HsCmdCase" class="def">HsCmdCase</a> (<a href="GHC-Hs-Extension.html#t:XCmdCase" title="GHC.Hs.Extension">XCmdCase</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id))</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnCase" title="GHC.Parser.Annotation">AnnCase</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnOf" title="GHC.Parser.Annotation">AnnOf</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code></li></ul></td></tr><tr><td class="src"><a id="v:HsCmdLamCase" class="def">HsCmdLamCase</a> (<a href="GHC-Hs-Extension.html#t:XCmdLamCase" title="GHC.Hs.Extension">XCmdLamCase</a> id) (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id))</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLam" title="GHC.Parser.Annotation">AnnLam</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnCase" title="GHC.Parser.Annotation">AnnCase</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code></li></ul></td></tr><tr><td class="src"><a id="v:HsCmdIf" class="def">HsCmdIf</a> (<a href="GHC-Hs-Extension.html#t:XCmdIf" title="GHC.Hs.Extension">XCmdIf</a> id) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnIf" title="GHC.Parser.Annotation">AnnIf</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnThen" title="GHC.Parser.Annotation">AnnThen</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnElse" title="GHC.Parser.Annotation">AnnElse</a></code>,</li></ul></td></tr><tr><td class="src"><a id="v:HsCmdLet" class="def">HsCmdLet</a> (<a href="GHC-Hs-Extension.html#t:XCmdLet" title="GHC.Hs.Extension">XCmdLet</a> id) (<a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> id) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLet" title="GHC.Parser.Annotation">AnnLet</a></code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,
       <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code>,<code><a href="GHC-Parser-Annotation.html#v:AnnIn" title="GHC.Parser.Annotation">AnnIn</a></code></li></ul></td></tr><tr><td class="src"><a id="v:HsCmdDo" class="def">HsCmdDo</a> (<a href="GHC-Hs-Extension.html#t:XCmdDo" title="GHC.Hs.Extension">XCmdDo</a> id) (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:CmdLStmt" title="GHC.Hs.Expr">CmdLStmt</a> id])</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnDo" title="GHC.Parser.Annotation">AnnDo</a></code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>, <code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnVbar" title="GHC.Parser.Annotation">AnnVbar</a></code>,
             <code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code></li></ul></td></tr><tr><td class="src"><a id="v:XCmd" class="def">XCmd</a> !(<a href="GHC-Hs-Extension.html#t:XXCmd" title="GHC.Hs.Extension">XXCmd</a> id)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsCmd">Instances</h4><details id="i:HsCmd" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-268" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-269" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-270" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:DisambECP:4"></span> <a href="GHC-Parser-PostProcess.html#t:DisambECP" title="GHC.Parser.PostProcess">DisambECP</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1843" class="link">Source</a> <a href="#t:DisambECP" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:DisambECP:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:Body" title="GHC.Parser.PostProcess">Body</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) :: <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a> -&gt; <a href="../base/Data-Kind.html#t:Type" title="Data.Kind">Type</a> <a href="src/GHC.Parser.PostProcess.html#Body" class="link">Source</a> <a href="#t:Body" class="selflink">#</a></p><p class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="src/GHC.Parser.PostProcess.html#InfixOp" class="link">Source</a> <a href="#t:InfixOp" class="selflink">#</a></p><p class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="src/GHC.Parser.PostProcess.html#FunArg" class="link">Source</a> <a href="#t:FunArg" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ecpFromCmd-39-">ecpFromCmd'</a> :: <a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#ecpFromCmd%27" class="link">Source</a> <a href="#v:ecpFromCmd-39-" class="selflink">#</a></p><p class="src"><a href="#v:ecpFromExp-39-">ecpFromExp'</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#ecpFromExp%27" class="link">Source</a> <a href="#v:ecpFromExp-39-" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLamPV">mkHsLamPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLamPV" class="link">Source</a> <a href="#v:mkHsLamPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLetPV">mkHsLetPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLetPV" class="link">Source</a> <a href="#v:mkHsLetPV" class="selflink">#</a></p><p class="src"><a href="#v:superInfixOp">superInfixOp</a> :: (<a href="GHC-Parser-PostProcess.html#t:DisambInfixOp" title="GHC.Parser.PostProcess">DisambInfixOp</a> (<a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) =&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#superInfixOp" class="link">Source</a> <a href="#v:superInfixOp" class="selflink">#</a></p><p class="src"><a href="#v:mkHsOpAppPV">mkHsOpAppPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsOpAppPV" class="link">Source</a> <a href="#v:mkHsOpAppPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsCasePV">mkHsCasePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsCasePV" class="link">Source</a> <a href="#v:mkHsCasePV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLamCasePV">mkHsLamCasePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLamCasePV" class="link">Source</a> <a href="#v:mkHsLamCasePV" class="selflink">#</a></p><p class="src"><a href="#v:superFunArg">superFunArg</a> :: (<a href="GHC-Parser-PostProcess.html#t:DisambECP" title="GHC.Parser.PostProcess">DisambECP</a> (<a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) =&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#superFunArg" class="link">Source</a> <a href="#v:superFunArg" class="selflink">#</a></p><p class="src"><a href="#v:mkHsAppPV">mkHsAppPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsAppPV" class="link">Source</a> <a href="#v:mkHsAppPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsAppTypePV">mkHsAppTypePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Hs-Type.html#t:LHsType" title="GHC.Hs.Type">LHsType</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsAppTypePV" class="link">Source</a> <a href="#v:mkHsAppTypePV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsIfPV">mkHsIfPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsIfPV" class="link">Source</a> <a href="#v:mkHsIfPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsDoPV">mkHsDoPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))] -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsDoPV" class="link">Source</a> <a href="#v:mkHsDoPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsParPV">mkHsParPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsParPV" class="link">Source</a> <a href="#v:mkHsParPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsVarPV">mkHsVarPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> <a href="GHC-Types-Name-Reader.html#t:RdrName" title="GHC.Types.Name.Reader">RdrName</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsVarPV" class="link">Source</a> <a href="#v:mkHsVarPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLitPV">mkHsLitPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Lit.html#t:HsLit" title="GHC.Hs.Lit">HsLit</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLitPV" class="link">Source</a> <a href="#v:mkHsLitPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsOverLitPV">mkHsOverLitPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Lit.html#t:HsOverLit" title="GHC.Hs.Lit">HsOverLit</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsOverLitPV" class="link">Source</a> <a href="#v:mkHsOverLitPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsWildCardPV">mkHsWildCardPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsWildCardPV" class="link">Source</a> <a href="#v:mkHsWildCardPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsTySigPV">mkHsTySigPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Hs-Type.html#t:LHsType" title="GHC.Hs.Type">LHsType</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsTySigPV" class="link">Source</a> <a href="#v:mkHsTySigPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsExplicitListPV">mkHsExplicitListPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; [<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)] -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsExplicitListPV" class="link">Source</a> <a href="#v:mkHsExplicitListPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsSplicePV">mkHsSplicePV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsSplicePV" class="link">Source</a> <a href="#v:mkHsSplicePV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsRecordPV">mkHsRecordPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; ([<a href="GHC-Hs-Pat.html#t:LHsRecField" title="GHC.Hs.Pat">LHsRecField</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>))], <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsRecordPV" class="link">Source</a> <a href="#v:mkHsRecordPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsNegAppPV">mkHsNegAppPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsNegAppPV" class="link">Source</a> <a href="#v:mkHsNegAppPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsSectionR_PV">mkHsSectionR_PV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsSectionR_PV" class="link">Source</a> <a href="#v:mkHsSectionR_PV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsViewPatPV">mkHsViewPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsViewPatPV" class="link">Source</a> <a href="#v:mkHsViewPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsAsPatPV">mkHsAsPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> <a href="GHC-Types-Name-Reader.html#t:RdrName" title="GHC.Types.Name.Reader">RdrName</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsAsPatPV" class="link">Source</a> <a href="#v:mkHsAsPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsLazyPatPV">mkHsLazyPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsLazyPatPV" class="link">Source</a> <a href="#v:mkHsLazyPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkHsBangPatPV">mkHsBangPatPV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkHsBangPatPV" class="link">Source</a> <a href="#v:mkHsBangPatPV" class="selflink">#</a></p><p class="src"><a href="#v:mkSumOrTuplePV">mkSumOrTuplePV</a> :: <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> -&gt; <a href="GHC-Types-Basic.html#t:Boxity" title="GHC.Types.Basic">Boxity</a> -&gt; <a href="GHC-Parser-PostProcess.html#t:SumOrTuple" title="GHC.Parser.PostProcess">SumOrTuple</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> (<a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="src/GHC.Parser.PostProcess.html#mkSumOrTuplePV" class="link">Source</a> <a href="#v:mkSumOrTuplePV" class="selflink">#</a></p><p class="src"><a href="#v:rejectPragmaPV">rejectPragmaPV</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) -&gt; <a href="GHC-Parser-PostProcess.html#t:PV" title="GHC.Parser.PostProcess">PV</a> () <a href="src/GHC.Parser.PostProcess.html#rejectPragmaPV" class="link">Source</a> <a href="#v:rejectPragmaPV" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:Outputable:5"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-1575" class="link">Source</a> <a href="#t:HsCmd" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:Outputable:5"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:Body:6"></span> <span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:Body" title="GHC.Parser.PostProcess">Body</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1844" class="link">Source</a> <a href="#t:Body" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:Body:6"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:Body" title="GHC.Parser.PostProcess">Body</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) = <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:FunArg:7"></span> <span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1856" class="link">Source</a> <a href="#t:FunArg" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:FunArg:7"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:FunArg" title="GHC.Parser.PostProcess">FunArg</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmd:InfixOp:8"></span> <span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Parser.PostProcess.html#line-1849" class="link">Source</a> <a href="#t:InfixOp" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmd:InfixOp:8"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Parser-PostProcess.html">GHC.Parser.PostProcess</a></p> <div class="src"><span class="keyword">type</span> <a href="GHC-Parser-PostProcess.html#t:InfixOp" title="GHC.Parser.PostProcess">InfixOp</a> (<a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) = <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsArrAppType" class="def">HsArrAppType</a> <a href="src/GHC.Hs.Expr.html#HsArrAppType" class="link">Source</a> <a href="#t:HsArrAppType" class="selflink">#</a></p><div class="doc"><p>Haskell Array Application Type</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsHigherOrderApp" class="def">HsHigherOrderApp</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsFirstOrderApp" class="def">HsFirstOrderApp</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsArrAppType">Instances</h4><details id="i:HsArrAppType" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsArrAppType:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a></span> <a href="src/GHC.Hs.Expr.html#line-1547" class="link">Source</a> <a href="#t:HsArrAppType" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsArrAppType:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; c <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; m <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; m <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> -&gt; m <a href="GHC-Hs-Expr.html#t:HsArrAppType" title="GHC.Hs.Expr">HsArrAppType</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LHsCmdTop" class="def">LHsCmdTop</a> p = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> p) <a href="src/GHC.Hs.Expr.html#LHsCmdTop" class="link">Source</a> <a href="#t:LHsCmdTop" class="selflink">#</a></p><div class="doc"><p>Top-level command, introducing a new arrow.
This may occur inside a proc (where the stack is empty) or as an
argument of a command-forming operator.</p><p>Located Haskell Top-level Command</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsCmdTop" class="def">HsCmdTop</a> p <a href="src/GHC.Hs.Expr.html#HsCmdTop" class="link">Source</a> <a href="#t:HsCmdTop" class="selflink">#</a></p><div class="doc"><p>Haskell Top-level Command</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsCmdTop" class="def">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:XCmdTop" title="GHC.Hs.Extension">XCmdTop</a> p) (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:XCmdTop" class="def">XCmdTop</a> !(<a href="GHC-Hs-Extension.html#t:XXCmdTop" title="GHC.Hs.Extension">XXCmdTop</a> p)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsCmdTop">Instances</h4><details id="i:HsCmdTop" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmdTop:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-273" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmdTop:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmdTop:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-274" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmdTop:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmdTop:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-275" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmdTop:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsCmdTop:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-1674" class="link">Source</a> <a href="#t:HsCmdTop" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsCmdTop:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:CmdTopTc" class="def">CmdTopTc</a> <a href="src/GHC.Hs.Expr.html#CmdTopTc" class="link">Source</a> <a href="#t:CmdTopTc" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:CmdTopTc" class="def">CmdTopTc</a> <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a> <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a> (<a href="GHC-Hs-Expr.html#t:CmdSyntaxTable" title="GHC.Hs.Expr">CmdSyntaxTable</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:CmdTopTc">Instances</h4><details id="i:CmdTopTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:CmdTopTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a></span> <a href="src/GHC.Hs.Instances.html#line-346" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:CmdTopTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:CmdTopTc" title="GHC.Hs.Expr">CmdTopTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:pprLCmd" class="def">pprLCmd</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprLCmd" class="link">Source</a> <a href="#v:pprLCmd" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprCmd" class="def">pprCmd</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprCmd" class="link">Source</a> <a href="#v:pprCmd" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isQuietHsCmd" class="def">isQuietHsCmd</a> :: <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isQuietHsCmd" class="link">Source</a> <a href="#v:isQuietHsCmd" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_lcmd" class="def">ppr_lcmd</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_lcmd" class="link">Source</a> <a href="#v:ppr_lcmd" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_cmd" class="def">ppr_cmd</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsCmd" title="GHC.Hs.Expr">HsCmd</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_cmd" class="link">Source</a> <a href="#v:ppr_cmd" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprCmdArg" class="def">pprCmdArg</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsCmdTop" title="GHC.Hs.Expr">HsCmdTop</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprCmdArg" class="link">Source</a> <a href="#v:pprCmdArg" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:HsRecordBinds" class="def">HsRecordBinds</a> p = <a href="GHC-Hs-Pat.html#t:HsRecFields" title="GHC.Hs.Pat">HsRecFields</a> p (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p) <a href="src/GHC.Hs.Expr.html#HsRecordBinds" class="link">Source</a> <a href="#t:HsRecordBinds" class="selflink">#</a></p><div class="doc"><p>Haskell Record Bindings</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:MatchGroup" class="def">MatchGroup</a> p body <a href="src/GHC.Hs.Expr.html#MatchGroup" class="link">Source</a> <a href="#t:MatchGroup" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:MG" class="def">MG</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:mg_ext" class="def">mg_ext</a> :: <a href="GHC-Hs-Extension.html#t:XMG" title="GHC.Hs.Extension">XMG</a> p body</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:mg_alts" class="def">mg_alts</a> :: <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> [<a href="GHC-Hs-Expr.html#t:LMatch" title="GHC.Hs.Expr">LMatch</a> p body]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:mg_origin" class="def">mg_origin</a> :: <a href="GHC-Types-Basic.html#t:Origin" title="GHC.Types.Basic">Origin</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:XMatchGroup" class="def">XMatchGroup</a> !(<a href="GHC-Hs-Extension.html#t:XXMatchGroup" title="GHC.Hs.Extension">XXMatchGroup</a> p body)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:MatchGroup">Instances</h4><details id="i:MatchGroup" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:MatchGroup:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-278" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:MatchGroup:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:MatchGroup:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-279" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:MatchGroup:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:MatchGroup:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-280" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:MatchGroup:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:MatchGroupTc" class="def">MatchGroupTc</a> <a href="src/GHC.Hs.Expr.html#MatchGroupTc" class="link">Source</a> <a href="#t:MatchGroupTc" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:MatchGroupTc" class="def">MatchGroupTc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:mg_arg_tys" class="def">mg_arg_tys</a> :: [<a href="GHC-Core-Type.html#t:Scaled" title="GHC.Core.Type">Scaled</a> <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:mg_res_ty" class="def">mg_res_ty</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:MatchGroupTc">Instances</h4><details id="i:MatchGroupTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:MatchGroupTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a></span> <a href="src/GHC.Hs.Expr.html#line-1723" class="link">Source</a> <a href="#t:MatchGroupTc" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:MatchGroupTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:MatchGroupTc" title="GHC.Hs.Expr">MatchGroupTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LMatch" class="def">LMatch</a> id body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> id body) <a href="src/GHC.Hs.Expr.html#LMatch" class="link">Source</a> <a href="#t:LMatch" class="selflink">#</a></p><div class="doc"><p>Located Match</p><p>May have <code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code> when in a
   list</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:Match" class="def">Match</a> p body <a href="src/GHC.Hs.Expr.html#Match" class="link">Source</a> <a href="#t:Match" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:Match" class="def">Match</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:m_ext" class="def">m_ext</a> :: <a href="GHC-Hs-Extension.html#t:XCMatch" title="GHC.Hs.Extension">XCMatch</a> p body</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:m_ctxt" class="def">m_ctxt</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:NoGhcTc" title="GHC.Hs.Extension">NoGhcTc</a> p)</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:m_pats" class="def">m_pats</a> :: [<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> p]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:m_grhss" class="def">m_grhss</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> p body</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:XMatch" class="def">XMatch</a> !(<a href="GHC-Hs-Extension.html#t:XXMatch" title="GHC.Hs.Extension">XXMatch</a> p body)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:Match">Instances</h4><details id="i:Match" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:Match:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-283" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:Match:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:Match:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-284" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:Match:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:Match:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-285" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:Match:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:Match:Outputable:4"></span> (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> pr, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pr) body)</span> <a href="src/GHC.Hs.Expr.html#line-1750" class="link">Source</a> <a href="#t:Match" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:Match:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pr) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pr) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:isInfixMatch" class="def">isInfixMatch</a> :: <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> id body -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isInfixMatch" class="link">Source</a> <a href="#v:isInfixMatch" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isEmptyMatchGroup" class="def">isEmptyMatchGroup</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> id body -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isEmptyMatchGroup" class="link">Source</a> <a href="#v:isEmptyMatchGroup" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isSingletonMatchGroup" class="def">isSingletonMatchGroup</a> :: [<a href="GHC-Hs-Expr.html#t:LMatch" title="GHC.Hs.Expr">LMatch</a> id body] -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isSingletonMatchGroup" class="link">Source</a> <a href="#v:isSingletonMatchGroup" class="selflink">#</a></p><div class="doc"><p>Is there only one RHS in this list of matches?</p></div></div><div class="top"><p class="src"><a id="v:matchGroupArity" class="def">matchGroupArity</a> :: <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> id) body -&gt; <a href="GHC-Types-Basic.html#t:Arity" title="GHC.Types.Basic">Arity</a> <a href="src/GHC.Hs.Expr.html#matchGroupArity" class="link">Source</a> <a href="#v:matchGroupArity" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:hsLMatchPats" class="def">hsLMatchPats</a> :: <a href="GHC-Hs-Expr.html#t:LMatch" title="GHC.Hs.Expr">LMatch</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> id) body -&gt; [<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> id)] <a href="src/GHC.Hs.Expr.html#hsLMatchPats" class="link">Source</a> <a href="#v:hsLMatchPats" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:GRHSs" class="def">GRHSs</a> p body <a href="src/GHC.Hs.Expr.html#GRHSs" class="link">Source</a> <a href="#t:GRHSs" class="selflink">#</a></p><div class="doc"><p>Guarded Right-Hand Sides</p><p>GRHSs are used both for pattern bindings and for Matches</p><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnVbar" title="GHC.Parser.Annotation">AnnVbar</a></code>,
        <code><a href="GHC-Parser-Annotation.html#v:AnnEqual" title="GHC.Parser.Annotation">AnnEqual</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnWhere" title="GHC.Parser.Annotation">AnnWhere</a></code>,
        <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code>
        <code><a href="GHC-Parser-Annotation.html#v:AnnRarrow" title="GHC.Parser.Annotation">AnnRarrow</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnSemi" title="GHC.Parser.Annotation">AnnSemi</a></code></li></ul></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:GRHSs" class="def">GRHSs</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:grhssExt" class="def">grhssExt</a> :: <a href="GHC-Hs-Extension.html#t:XCGRHSs" title="GHC.Hs.Extension">XCGRHSs</a> p body</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:grhssGRHSs" class="def">grhssGRHSs</a> :: [<a href="GHC-Hs-Expr.html#t:LGRHS" title="GHC.Hs.Expr">LGRHS</a> p body]</dfn><div class="doc"><p>Guarded RHSs</p></div></li><li><dfn class="src"><a id="v:grhssLocalBinds" class="def">grhssLocalBinds</a> :: <a href="GHC-Hs-Binds.html#t:LHsLocalBinds" title="GHC.Hs.Binds">LHsLocalBinds</a> p</dfn><div class="doc"><p>The where clause</p></div></li></ul></div></td></tr><tr><td class="src"><a id="v:XGRHSs" class="def">XGRHSs</a> !(<a href="GHC-Hs-Extension.html#t:XXGRHSs" title="GHC.Hs.Extension">XXGRHSs</a> p body)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:GRHSs">Instances</h4><details id="i:GRHSs" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GRHSs:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-288" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GRHSs:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GRHSs:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-289" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GRHSs:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GRHSs:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-290" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GRHSs:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LGRHS" class="def">LGRHS</a> id body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> id body) <a href="src/GHC.Hs.Expr.html#LGRHS" class="link">Source</a> <a href="#t:LGRHS" class="selflink">#</a></p><div class="doc"><p>Located Guarded Right-Hand Side</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:GRHS" class="def">GRHS</a> p body <a href="src/GHC.Hs.Expr.html#GRHS" class="link">Source</a> <a href="#t:GRHS" class="selflink">#</a></p><div class="doc"><p>Guarded Right Hand Side.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:GRHS" class="def">GRHS</a> (<a href="GHC-Hs-Extension.html#t:XCGRHS" title="GHC.Hs.Extension">XCGRHS</a> p body) [<a href="GHC-Hs-Expr.html#t:GuardLStmt" title="GHC.Hs.Expr">GuardLStmt</a> p] body</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:XGRHS" class="def">XGRHS</a> !(<a href="GHC-Hs-Extension.html#t:XXGRHS" title="GHC.Hs.Extension">XXGRHS</a> p body)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:GRHS">Instances</h4><details id="i:GRHS" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GRHS:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-293" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GRHS:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GRHS:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-294" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GRHS:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:GRHS:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-295" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:GRHS:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:pprMatches" class="def">pprMatches</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprMatches" class="link">Source</a> <a href="#v:pprMatches" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprFunBind" class="def">pprFunBind</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:MatchGroup" title="GHC.Hs.Expr">MatchGroup</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprFunBind" class="link">Source</a> <a href="#v:pprFunBind" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprPatBind" class="def">pprPatBind</a> :: <span class="keyword">forall</span> bndr p body. (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> bndr, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> bndr) -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprPatBind" class="link">Source</a> <a href="#v:pprPatBind" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprMatch" class="def">pprMatch</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprMatch" class="link">Source</a> <a href="#v:pprMatch" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprGRHSs" class="def">pprGRHSs</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> passL -&gt; <a href="GHC-Hs-Expr.html#t:GRHSs" title="GHC.Hs.Expr">GRHSs</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprGRHSs" class="link">Source</a> <a href="#v:pprGRHSs" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprGRHS" class="def">pprGRHS</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> passL -&gt; <a href="GHC-Hs-Expr.html#t:GRHS" title="GHC.Hs.Expr">GRHS</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprGRHS" class="link">Source</a> <a href="#v:pprGRHS" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pp_rhs" class="def">pp_rhs</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> passL -&gt; body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pp_rhs" class="link">Source</a> <a href="#v:pp_rhs" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LStmt" class="def">LStmt</a> id body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> id id body) <a href="src/GHC.Hs.Expr.html#LStmt" class="link">Source</a> <a href="#t:LStmt" class="selflink">#</a></p><div class="doc"><p>Located <code>do</code> block Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:LStmtLR" class="def">LStmtLR</a> idL idR body = <a href="GHC-Types-SrcLoc.html#t:Located" title="GHC.Types.SrcLoc">Located</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> idL idR body) <a href="src/GHC.Hs.Expr.html#LStmtLR" class="link">Source</a> <a href="#t:LStmtLR" class="selflink">#</a></p><div class="doc"><p>Located Statement with separate Left and Right id's</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:Stmt" class="def">Stmt</a> id body = <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> id id body <a href="src/GHC.Hs.Expr.html#Stmt" class="link">Source</a> <a href="#t:Stmt" class="selflink">#</a></p><div class="doc"><p><code>do</code> block Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:CmdLStmt" class="def">CmdLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id) <a href="src/GHC.Hs.Expr.html#CmdLStmt" class="link">Source</a> <a href="#t:CmdLStmt" class="selflink">#</a></p><div class="doc"><p>Command Located Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:CmdStmt" class="def">CmdStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsCmd" title="GHC.Hs.Expr">LHsCmd</a> id) <a href="src/GHC.Hs.Expr.html#CmdStmt" class="link">Source</a> <a href="#t:CmdStmt" class="selflink">#</a></p><div class="doc"><p>Command Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ExprLStmt" class="def">ExprLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="src/GHC.Hs.Expr.html#ExprLStmt" class="link">Source</a> <a href="#t:ExprLStmt" class="selflink">#</a></p><div class="doc"><p>Expression Located Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:ExprStmt" class="def">ExprStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="src/GHC.Hs.Expr.html#ExprStmt" class="link">Source</a> <a href="#t:ExprStmt" class="selflink">#</a></p><div class="doc"><p>Expression Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:GuardLStmt" class="def">GuardLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="src/GHC.Hs.Expr.html#GuardLStmt" class="link">Source</a> <a href="#t:GuardLStmt" class="selflink">#</a></p><div class="doc"><p>Guard Located Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:GuardStmt" class="def">GuardStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="src/GHC.Hs.Expr.html#GuardStmt" class="link">Source</a> <a href="#t:GuardStmt" class="selflink">#</a></p><div class="doc"><p>Guard Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:GhciLStmt" class="def">GhciLStmt</a> id = <a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="src/GHC.Hs.Expr.html#GhciLStmt" class="link">Source</a> <a href="#t:GhciLStmt" class="selflink">#</a></p><div class="doc"><p>Ghci Located Statement</p></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:GhciStmt" class="def">GhciStmt</a> id = <a href="GHC-Hs-Expr.html#t:Stmt" title="GHC.Hs.Expr">Stmt</a> id (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) <a href="src/GHC.Hs.Expr.html#GhciStmt" class="link">Source</a> <a href="#t:GhciStmt" class="selflink">#</a></p><div class="doc"><p>Ghci Statement</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:StmtLR" class="def">StmtLR</a> idL idR body <a href="src/GHC.Hs.Expr.html#StmtLR" class="link">Source</a> <a href="#t:StmtLR" class="selflink">#</a></p><div class="doc"><p>API Annotations when in qualifier lists or guards
  - <code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnVbar" title="GHC.Parser.Annotation">AnnVbar</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnComma" title="GHC.Parser.Annotation">AnnComma</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnThen" title="GHC.Parser.Annotation">AnnThen</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnBy" title="GHC.Parser.Annotation">AnnBy</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnBy" title="GHC.Parser.Annotation">AnnBy</a></code>,
         <code><a href="GHC-Parser-Annotation.html#v:AnnGroup" title="GHC.Parser.Annotation">AnnGroup</a></code>,<code><a href="GHC-Parser-Annotation.html#v:AnnUsing" title="GHC.Parser.Annotation">AnnUsing</a></code></p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:LastStmt" class="def">LastStmt</a> (<a href="GHC-Hs-Extension.html#t:XLastStmt" title="GHC.Hs.Extension">XLastStmt</a> idL idR body) body (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a>) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:BindStmt" class="def">BindStmt</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src">(<a href="GHC-Hs-Extension.html#t:XBindStmt" title="GHC.Hs.Extension">XBindStmt</a> idL idR body)</dfn><div class="doc"><p>Post renaming has optional fail and bind / (&gt;&gt;=) operator.
 Post typechecking, also has multiplicity of the argument
 and the result type of the function passed to bind;
 that is, (P, S) in (&gt;&gt;=) :: Q -&gt; (R # P -&gt; S) -&gt; T
 See Note [The type of bind in Stmts]</p></div></li><li><dfn class="src">(<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> idL)</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src">body</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:ApplicativeStmt" class="def">ApplicativeStmt</a> (<a href="GHC-Hs-Extension.html#t:XApplicativeStmt" title="GHC.Hs.Extension">XApplicativeStmt</a> idL idR body) [(<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR, <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> idL)] (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR))</td><td class="doc"><p><code><a href="GHC-Hs-Expr.html#v:ApplicativeStmt" title="GHC.Hs.Expr">ApplicativeStmt</a></code> represents an applicative expression built with
 <code><a href="GHC-Prelude.html#v:-60--36--62-" title="GHC.Prelude">&lt;$&gt;</a></code> and <code><a href="GHC-Prelude.html#v:-60--42--62-" title="GHC.Prelude">&lt;*&gt;</a></code>.  It is generated by the renamer, and is desugared into the
 appropriate applicative expression by the desugarer, but it is intended
 to be invisible in error messages.</p><p>For full details, see Note [ApplicativeDo] in <a href="GHC-Rename-Expr.html">GHC.Rename.Expr</a></p></td></tr><tr><td class="src"><a id="v:BodyStmt" class="def">BodyStmt</a> (<a href="GHC-Hs-Extension.html#t:XBodyStmt" title="GHC.Hs.Extension">XBodyStmt</a> idL idR body) body (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:LetStmt" class="def">LetStmt</a> (<a href="GHC-Hs-Extension.html#t:XLetStmt" title="GHC.Hs.Extension">XLetStmt</a> idL idR body) (<a href="GHC-Hs-Binds.html#t:LHsLocalBindsLR" title="GHC.Hs.Binds">LHsLocalBindsLR</a> idL idR)</td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnLet" title="GHC.Parser.Annotation">AnnLet</a></code>
          <code><a href="GHC-Parser-Annotation.html#v:AnnOpen" title="GHC.Parser.Annotation">AnnOpen</a></code> <code>'{'</code>,<code><a href="GHC-Parser-Annotation.html#v:AnnClose" title="GHC.Parser.Annotation">AnnClose</a></code> <code>'}'</code>,</li></ul></td></tr><tr><td class="src"><a id="v:ParStmt" class="def">ParStmt</a> (<a href="GHC-Hs-Extension.html#t:XParStmt" title="GHC.Hs.Extension">XParStmt</a> idL idR body) [<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> idL idR] (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> idR) (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:TransStmt" class="def">TransStmt</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:trS_ext" class="def">trS_ext</a> :: <a href="GHC-Hs-Extension.html#t:XTransStmt" title="GHC.Hs.Extension">XTransStmt</a> idL idR body</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_form" class="def">trS_form</a> :: <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_stmts" class="def">trS_stmts</a> :: [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> idL]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_bndrs" class="def">trS_bndrs</a> :: [(<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR, <a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR)]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_using" class="def">trS_using</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_by" class="def">trS_by</a> :: <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idR)</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_ret" class="def">trS_ret</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_bind" class="def">trS_bind</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:trS_fmap" class="def">trS_fmap</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:RecStmt" class="def">RecStmt</a></td><td class="doc"><ul><li><code><a href="GHC-Parser-Annotation.html#v:AnnKeywordId" title="GHC.Parser.Annotation">AnnKeywordId</a></code> : <code><a href="GHC-Parser-Annotation.html#v:AnnRec" title="GHC.Parser.Annotation">AnnRec</a></code></li></ul></td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:recS_ext" class="def">recS_ext</a> :: <a href="GHC-Hs-Extension.html#t:XRecStmt" title="GHC.Hs.Extension">XRecStmt</a> idL idR body</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_stmts" class="def">recS_stmts</a> :: [<a href="GHC-Hs-Expr.html#t:LStmtLR" title="GHC.Hs.Expr">LStmtLR</a> idL idR body]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_later_ids" class="def">recS_later_ids</a> :: [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_rec_ids" class="def">recS_rec_ids</a> :: [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_bind_fn" class="def">recS_bind_fn</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_ret_fn" class="def">recS_ret_fn</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_mfix_fn" class="def">recS_mfix_fn</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR</dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:XStmtLR" class="def">XStmtLR</a> !(<a href="GHC-Hs-Extension.html#t:XXStmtLR" title="GHC.Hs.Extension">XXStmtLR</a> idL idR body)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:StmtLR">Instances</h4><details id="i:StmtLR" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:StmtLR:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-298" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:StmtLR:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:StmtLR:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-299" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:StmtLR:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:StmtLR:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-300" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:StmtLR:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:StmtLR:Data:4"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> body =&gt; <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)</span> <a href="src/GHC.Hs.Instances.html#line-301" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:StmtLR:Data:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body -&gt; m (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> body) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:StmtLR:Outputable:5"></span> (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> pl, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> pr, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pl) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pr) body)</span> <a href="src/GHC.Hs.Expr.html#line-2398" class="link">Source</a> <a href="#t:StmtLR" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:StmtLR:Outputable:5"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pl) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pr) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pl) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> pr) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:RecStmtTc" class="def">RecStmtTc</a> <a href="src/GHC.Hs.Expr.html#RecStmtTc" class="link">Source</a> <a href="#t:RecStmtTc" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:RecStmtTc" class="def">RecStmtTc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:recS_bind_ty" class="def">recS_bind_ty</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_later_rets" class="def">recS_later_rets</a> :: [<a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_rec_rets" class="def">recS_rec_rets</a> :: [<a href="GHC-Hs-Expr.html#t:PostTcExpr" title="GHC.Hs.Expr">PostTcExpr</a>]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:recS_ret_ty" class="def">recS_ret_ty</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:RecStmtTc">Instances</h4><details id="i:RecStmtTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:RecStmtTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a></span> <a href="src/GHC.Hs.Instances.html#line-303" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:RecStmtTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:RecStmtTc" title="GHC.Hs.Expr">RecStmtTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:XBindStmtRn" class="def">XBindStmtRn</a> <a href="src/GHC.Hs.Expr.html#XBindStmtRn" class="link">Source</a> <a href="#t:XBindStmtRn" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:XBindStmtRn" class="def">XBindStmtRn</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:xbsrn_bindOp" class="def">xbsrn_bindOp</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:xbsrn_failOp" class="def">xbsrn_failOp</a> :: <a href="GHC-Hs-Expr.html#t:FailOperator" title="GHC.Hs.Expr">FailOperator</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:XBindStmtRn">Instances</h4><details id="i:XBindStmtRn" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:XBindStmtRn:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a></span> <a href="src/GHC.Hs.Instances.html#line-352" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:XBindStmtRn:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; c <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XBindStmtRn" title="GHC.Hs.Expr">XBindStmtRn</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:XBindStmtTc" class="def">XBindStmtTc</a> <a href="src/GHC.Hs.Expr.html#XBindStmtTc" class="link">Source</a> <a href="#t:XBindStmtTc" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:XBindStmtTc" class="def">XBindStmtTc</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:xbstc_bindOp" class="def">xbstc_bindOp</a> :: <a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:xbstc_boundResultType" class="def">xbstc_boundResultType</a> :: <a href="GHC-Core-Type.html#t:Type" title="GHC.Core.Type">Type</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:xbstc_boundResultMult" class="def">xbstc_boundResultMult</a> :: <a href="GHC-Core-Type.html#t:Mult" title="GHC.Core.Type">Mult</a></dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:xbstc_failOp" class="def">xbstc_failOp</a> :: <a href="GHC-Hs-Expr.html#t:FailOperator" title="GHC.Hs.Expr">FailOperator</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:XBindStmtTc">Instances</h4><details id="i:XBindStmtTc" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:XBindStmtTc:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a></span> <a href="src/GHC.Hs.Instances.html#line-353" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:XBindStmtTc:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; c <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> -&gt; m <a href="GHC-Hs-Expr.html#t:XBindStmtTc" title="GHC.Hs.Expr">XBindStmtTc</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:TransForm" class="def">TransForm</a> <a href="src/GHC.Hs.Expr.html#TransForm" class="link">Source</a> <a href="#t:TransForm" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ThenForm" class="def">ThenForm</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:GroupForm" class="def">GroupForm</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:TransForm">Instances</h4><details id="i:TransForm" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:TransForm:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a></span> <a href="src/GHC.Hs.Expr.html#line-2159" class="link">Source</a> <a href="#t:TransForm" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:TransForm:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; c <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; m <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; m <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; m <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ParStmtBlock" class="def">ParStmtBlock</a> idL idR <a href="src/GHC.Hs.Expr.html#ParStmtBlock" class="link">Source</a> <a href="#t:ParStmtBlock" class="selflink">#</a></p><div class="doc"><p>Parenthesised Statement Block</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ParStmtBlock" class="def">ParStmtBlock</a> (<a href="GHC-Hs-Extension.html#t:XParStmtBlock" title="GHC.Hs.Extension">XParStmtBlock</a> idL idR) [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> idL] [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> idR] (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> idR)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:XParStmtBlock" class="def">XParStmtBlock</a> !(<a href="GHC-Hs-Extension.html#t:XXParStmtBlock" title="GHC.Hs.Extension">XXParStmtBlock</a> idL idR)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:ParStmtBlock">Instances</h4><details id="i:ParStmtBlock" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ParStmtBlock:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-306" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ParStmtBlock:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ParStmtBlock:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-307" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ParStmtBlock:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ParStmtBlock:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-308" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ParStmtBlock:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ParStmtBlock:Data:4"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-309" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ParStmtBlock:Data:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ParStmtBlock:Outputable:5"></span> (<a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> idL idL (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idL)), <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:XXParStmtBlock" title="GHC.Hs.Extension">XXParStmtBlock</a> idL idR)) =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> idL idR)</span> <a href="src/GHC.Hs.Expr.html#line-2392" class="link">Source</a> <a href="#t:ParStmtBlock" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ParStmtBlock:Outputable:5"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> idL idR -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:ParStmtBlock" title="GHC.Hs.Expr">ParStmtBlock</a> idL idR -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:FailOperator" class="def">FailOperator</a> id = <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:SyntaxExpr" title="GHC.Hs.Expr">SyntaxExpr</a> id) <a href="src/GHC.Hs.Expr.html#FailOperator" class="link">Source</a> <a href="#t:FailOperator" class="selflink">#</a></p><div class="doc"><p>The fail operator</p><p>This is used for `.. &lt;-` &quot;bind statments&quot; in do notation, including
 non-monadic &quot;binds&quot; in applicative.</p><p>The fail operator is 'Just expr' if it potentially fail monadically. if the
 pattern match cannot fail, or shouldn't fail monadically (regular incomplete
 pattern exception), it is <code><a href="GHC-Prelude.html#v:Nothing" title="GHC.Prelude">Nothing</a></code>.</p><p>See Note [Monad fail : Rebindable syntax, overloaded strings] for the type of
 expression in the <code><a href="GHC-Prelude.html#v:Just" title="GHC.Prelude">Just</a></code> case, and why it is so.</p><p>See Note [Failing pattern matches in Stmts] for which contexts for
 '<code>BindStmt</code>'s should use the monadic fail and which shouldn't.</p></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ApplicativeArg" class="def">ApplicativeArg</a> idL <a href="src/GHC.Hs.Expr.html#ApplicativeArg" class="link">Source</a> <a href="#t:ApplicativeArg" class="selflink">#</a></p><div class="doc"><p>Applicative Argument</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ApplicativeArgOne" class="def">ApplicativeArgOne</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:xarg_app_arg_one" class="def">xarg_app_arg_one</a> :: <a href="GHC-Hs-Extension.html#t:XApplicativeArgOne" title="GHC.Hs.Extension">XApplicativeArgOne</a> idL</dfn><div class="doc"><p>The fail operator, after renaming</p><p>The fail operator is needed if this is a BindStmt
 where the pattern can fail. E.g.:
 (Just a) &lt;- stmt
 The fail operator will be invoked if the pattern
 match fails.
 It is also used for guards in MonadComprehensions.
 The fail operator is Nothing
 if the pattern match can't fail</p></div></li><li><dfn class="src"><a id="v:app_arg_pattern" class="def">app_arg_pattern</a> :: <a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> idL</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:arg_expr" class="def">arg_expr</a> :: <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> idL</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:is_body_stmt" class="def">is_body_stmt</a> :: <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a></dfn><div class="doc"><p>True <a href="=">=</a> was a BodyStmt,
 False <a href="=">=</a> was a BindStmt.
 See Note [Applicative BodyStmt]</p></div></li></ul></div></td></tr><tr><td class="src"><a id="v:ApplicativeArgMany" class="def">ApplicativeArgMany</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:xarg_app_arg_many" class="def">xarg_app_arg_many</a> :: <a href="GHC-Hs-Extension.html#t:XApplicativeArgMany" title="GHC.Hs.Extension">XApplicativeArgMany</a> idL</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:app_stmts" class="def">app_stmts</a> :: [<a href="GHC-Hs-Expr.html#t:ExprLStmt" title="GHC.Hs.Expr">ExprLStmt</a> idL]</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:final_expr" class="def">final_expr</a> :: <a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> idL</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:bv_pattern" class="def">bv_pattern</a> :: <a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> idL</dfn><div class="doc empty">&nbsp;</div></li><li><dfn class="src"><a id="v:stmt_context" class="def">stmt_context</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a></dfn><div class="doc empty">&nbsp;</div></li></ul></div></td></tr><tr><td class="src"><a id="v:XApplicativeArg" class="def">XApplicativeArg</a> !(<a href="GHC-Hs-Extension.html#t:XXApplicativeArg" title="GHC.Hs.Extension">XXApplicativeArg</a> idL)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:ApplicativeArg">Instances</h4><details id="i:ApplicativeArg" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ApplicativeArg:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-312" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ApplicativeArg:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ApplicativeArg:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-313" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ApplicativeArg:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ApplicativeArg:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-314" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ApplicativeArg:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ApplicativeArg:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL))</span> <a href="src/GHC.Hs.Expr.html#line-2469" class="link">Source</a> <a href="#t:ApplicativeArg" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ApplicativeArg:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:pprStmt" class="def">pprStmt</a> :: <span class="keyword">forall</span> idL idR body. (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprStmt" class="link">Source</a> <a href="#v:pprStmt" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprArg" class="def">pprArg</a> :: <span class="keyword">forall</span> idL. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL =&gt; <a href="GHC-Hs-Expr.html#t:ApplicativeArg" title="GHC.Hs.Expr">ApplicativeArg</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprArg" class="link">Source</a> <a href="#v:pprArg" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprTransformStmt" class="def">pprTransformStmt</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; [<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)] -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p)) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprTransformStmt" class="link">Source</a> <a href="#v:pprTransformStmt" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprTransStmt" class="def">pprTransStmt</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body =&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> body -&gt; body -&gt; <a href="GHC-Hs-Expr.html#t:TransForm" title="GHC.Hs.Expr">TransForm</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprTransStmt" class="link">Source</a> <a href="#v:pprTransStmt" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprBy" class="def">pprBy</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body =&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprBy" class="link">Source</a> <a href="#v:pprBy" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprDo" class="def">pprDo</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> any -&gt; [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprDo" class="link">Source</a> <a href="#v:pprDo" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_module_name_prefix" class="def">ppr_module_name_prefix</a> :: <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_module_name_prefix" class="link">Source</a> <a href="#v:ppr_module_name_prefix" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_do_stmts" class="def">ppr_do_stmts</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; [<a href="GHC-Hs-Expr.html#t:LStmtLR" title="GHC.Hs.Expr">LStmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_do_stmts" class="link">Source</a> <a href="#v:ppr_do_stmts" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprComp" class="def">pprComp</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprComp" class="link">Source</a> <a href="#v:pprComp" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprQuals" class="def">pprQuals</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; [<a href="GHC-Hs-Expr.html#t:LStmt" title="GHC.Hs.Expr">LStmt</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) body] -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprQuals" class="link">Source</a> <a href="#v:pprQuals" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsSplice" class="def">HsSplice</a> id <a href="src/GHC.Hs.Expr.html#HsSplice" class="link">Source</a> <a href="#t:HsSplice" class="selflink">#</a></p><div class="doc"><p>Haskell Splice</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsTypedSplice" class="def">HsTypedSplice</a> (<a href="GHC-Hs-Extension.html#t:XTypedSplice" title="GHC.Hs.Extension">XTypedSplice</a> id) <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsUntypedSplice" class="def">HsUntypedSplice</a> (<a href="GHC-Hs-Extension.html#t:XUntypedSplice" title="GHC.Hs.Extension">XUntypedSplice</a> id) <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsQuasiQuote" class="def">HsQuasiQuote</a> (<a href="GHC-Hs-Extension.html#t:XQuasiQuote" title="GHC.Hs.Extension">XQuasiQuote</a> id) (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) <a href="GHC-Types-SrcLoc.html#t:SrcSpan" title="GHC.Types.SrcLoc">SrcSpan</a> <a href="GHC-Data-FastString.html#t:FastString" title="GHC.Data.FastString">FastString</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:HsSpliced" class="def">HsSpliced</a> (<a href="GHC-Hs-Extension.html#t:XSpliced" title="GHC.Hs.Extension">XSpliced</a> id) <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:XSplice" class="def">XSplice</a> !(<a href="GHC-Hs-Extension.html#t:XXSplice" title="GHC.Hs.Extension">XXSplice</a> id)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsSplice">Instances</h4><details id="i:HsSplice" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplice:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-325" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplice:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplice:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-326" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplice:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplice:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-327" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplice:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplice:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-2740" class="link">Source</a> <a href="#t:HsSplice" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplice:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">newtype</span> <a id="t:HsSplicedT" class="def">HsSplicedT</a> <a href="src/GHC.Hs.Expr.html#HsSplicedT" class="link">Source</a> <a href="#t:HsSplicedT" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsSplicedT" class="def">HsSplicedT</a> <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsSplicedT">Instances</h4><details id="i:HsSplicedT" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplicedT:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a></span> <a href="src/GHC.Hs.Expr.html#line-2588" class="link">Source</a> <a href="#t:HsSplicedT" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplicedT:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; c <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; m <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; m <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> -&gt; m <a href="GHC-Hs-Expr.html#t:HsSplicedT" title="GHC.Hs.Expr">HsSplicedT</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:SpliceDecoration" class="def">SpliceDecoration</a> <a href="src/GHC.Hs.Expr.html#SpliceDecoration" class="link">Source</a> <a href="#t:SpliceDecoration" class="selflink">#</a></p><div class="doc"><p>A splice can appear with various decorations wrapped around it. This data
 type captures explicitly how it was originally written, for use in the pretty
 printer.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:DollarSplice" class="def">DollarSplice</a></td><td class="doc"><p>$splice or $$splice</p></td></tr><tr><td class="src"><a id="v:BareSplice" class="def">BareSplice</a></td><td class="doc"><p>bare splice</p></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:SpliceDecoration">Instances</h4><details id="i:SpliceDecoration" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SpliceDecoration:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a></span> <a href="src/GHC.Hs.Expr.html#line-2604" class="link">Source</a> <a href="#t:SpliceDecoration" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SpliceDecoration:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; c <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; m <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SpliceDecoration:Show:2"></span> <a href="GHC-Prelude.html#t:Show" title="GHC.Prelude">Show</a> <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a></span> <a href="src/GHC.Hs.Expr.html#line-2604" class="link">Source</a> <a href="#t:SpliceDecoration" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SpliceDecoration:Show:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Prelude.html#t:ShowS" title="GHC.Prelude">ShowS</a> <a href="../base/src/GHC.Show.html#showsPrec" class="link">Source</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Prelude.html#t:String" title="GHC.Prelude">String</a> <a href="../base/src/GHC.Show.html#show" class="link">Source</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a>] -&gt; <a href="GHC-Prelude.html#t:ShowS" title="GHC.Prelude">ShowS</a> <a href="../base/src/GHC.Show.html#showList" class="link">Source</a> <a href="#v:showList" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SpliceDecoration:Outputable:3"></span> <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a></span> <a href="src/GHC.Hs.Expr.html#line-2606" class="link">Source</a> <a href="#t:SpliceDecoration" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SpliceDecoration:Outputable:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:SpliceDecoration:Eq:4"></span> <a href="GHC-Prelude.html#t:Eq" title="GHC.Prelude">Eq</a> <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a></span> <a href="src/GHC.Hs.Expr.html#line-2604" class="link">Source</a> <a href="#t:SpliceDecoration" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:SpliceDecoration:Eq:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:-61--61-">(==)</a> :: <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="#v:-61--61-" class="selflink">#</a></p><p class="src"><a href="#v:-47--61-">(/=)</a> :: <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Hs-Expr.html#t:SpliceDecoration" title="GHC.Hs.Expr">SpliceDecoration</a> -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="#v:-47--61-" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:isTypedSplice" class="def">isTypedSplice</a> :: <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isTypedSplice" class="link">Source</a> <a href="#v:isTypedSplice" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">newtype</span> <a id="t:ThModFinalizers" class="def">ThModFinalizers</a> <a href="src/GHC.Hs.Expr.html#ThModFinalizers" class="link">Source</a> <a href="#t:ThModFinalizers" class="selflink">#</a></p><div class="doc"><p>Finalizers produced by a splice with
 <code><a href="../template-haskell/Language-Haskell-TH-Syntax.html#v:addModFinalizer" title="Language.Haskell.TH.Syntax">addModFinalizer</a></code></p><p>See Note [Delaying modFinalizers in untyped splices] in GHC.Rename.Splice. For how
 this is used.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ThModFinalizers" class="def">ThModFinalizers</a> [<a href="../ghci/GHCi-RemoteTypes.html#t:ForeignRef" title="GHCi.RemoteTypes">ForeignRef</a> (<a href="../template-haskell/Language-Haskell-TH-Syntax.html#t:Q" title="Language.Haskell.TH.Syntax">Q</a> ())]</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:ThModFinalizers">Instances</h4><details id="i:ThModFinalizers" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ThModFinalizers:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a></span> <a href="src/GHC.Hs.Expr.html#line-2623" class="link">Source</a> <a href="#t:ThModFinalizers" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ThModFinalizers:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; c <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; m <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; m <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> -&gt; m <a href="GHC-Hs-Expr.html#t:ThModFinalizers" title="GHC.Hs.Expr">ThModFinalizers</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:DelayedSplice" class="def">DelayedSplice</a> <a href="src/GHC.Hs.Expr.html#DelayedSplice" class="link">Source</a> <a href="#t:DelayedSplice" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:DelayedSplice" class="def">DelayedSplice</a> <a href="GHC-Tc-Types.html#t:TcLclEnv" title="GHC.Tc.Types">TcLclEnv</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="GHC-Tc-Utils-TcType.html#t:TcType" title="GHC.Tc.Utils.TcType">TcType</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:DelayedSplice">Instances</h4><details id="i:DelayedSplice" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:DelayedSplice:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a></span> <a href="src/GHC.Hs.Expr.html#line-2638" class="link">Source</a> <a href="#t:DelayedSplice" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:DelayedSplice:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; c <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:DelayedSplice" title="GHC.Hs.Expr">DelayedSplice</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsSplicedThing" class="def">HsSplicedThing</a> id <a href="src/GHC.Hs.Expr.html#HsSplicedThing" class="link">Source</a> <a href="#t:HsSplicedThing" class="selflink">#</a></p><div class="doc"><p>Haskell Spliced Thing</p><p>Values that can result from running a splice.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:HsSplicedExpr" class="def">HsSplicedExpr</a> (<a href="GHC-Hs-Expr.html#t:HsExpr" title="GHC.Hs.Expr">HsExpr</a> id)</td><td class="doc"><p>Haskell Spliced Expression</p></td></tr><tr><td class="src"><a id="v:HsSplicedTy" class="def">HsSplicedTy</a> (<a href="GHC-Hs-Type.html#t:HsType" title="GHC.Hs.Type">HsType</a> id)</td><td class="doc"><p>Haskell Spliced Type</p></td></tr><tr><td class="src"><a id="v:HsSplicedPat" class="def">HsSplicedPat</a> (<a href="GHC-Hs-Pat.html#t:Pat" title="GHC.Hs.Pat">Pat</a> id)</td><td class="doc"><p>Haskell Spliced Pattern</p></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsSplicedThing">Instances</h4><details id="i:HsSplicedThing" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplicedThing:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-330" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplicedThing:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplicedThing:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-331" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplicedThing:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplicedThing:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-332" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplicedThing:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsSplicedThing:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-2734" class="link">Source</a> <a href="#t:HsSplicedThing" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsSplicedThing:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsSplicedThing" title="GHC.Hs.Expr">HsSplicedThing</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:SplicePointName" class="def">SplicePointName</a> = <a href="GHC-Types-Name.html#t:Name" title="GHC.Types.Name">Name</a> <a href="src/GHC.Hs.Expr.html#SplicePointName" class="link">Source</a> <a href="#t:SplicePointName" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:PendingRnSplice" class="def">PendingRnSplice</a> <a href="src/GHC.Hs.Expr.html#PendingRnSplice" class="link">Source</a> <a href="#t:PendingRnSplice" class="selflink">#</a></p><div class="doc"><p>Pending Renamer Splice</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:PendingRnSplice" class="def">PendingRnSplice</a> <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="GHC-Hs-Expr.html#t:SplicePointName" title="GHC.Hs.Expr">SplicePointName</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:PendingRnSplice">Instances</h4><details id="i:PendingRnSplice" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:PendingRnSplice:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a></span> <a href="src/GHC.Hs.Instances.html#line-347" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:PendingRnSplice:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; c <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:PendingRnSplice:Outputable:2"></span> <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a></span> <a href="src/GHC.Hs.Expr.html#line-2836" class="link">Source</a> <a href="#t:PendingRnSplice" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:PendingRnSplice:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:PendingRnSplice" title="GHC.Hs.Expr">PendingRnSplice</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:UntypedSpliceFlavour" class="def">UntypedSpliceFlavour</a> <a href="src/GHC.Hs.Expr.html#UntypedSpliceFlavour" class="link">Source</a> <a href="#t:UntypedSpliceFlavour" class="selflink">#</a></p><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:UntypedExpSplice" class="def">UntypedExpSplice</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:UntypedPatSplice" class="def">UntypedPatSplice</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:UntypedTypeSplice" class="def">UntypedTypeSplice</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:UntypedDeclSplice" class="def">UntypedDeclSplice</a></td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:UntypedSpliceFlavour">Instances</h4><details id="i:UntypedSpliceFlavour" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:UntypedSpliceFlavour:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a></span> <a href="src/GHC.Hs.Expr.html#line-2664" class="link">Source</a> <a href="#t:UntypedSpliceFlavour" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:UntypedSpliceFlavour:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; c <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; m <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; m <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> -&gt; m <a href="GHC-Hs-Expr.html#t:UntypedSpliceFlavour" title="GHC.Hs.Expr">UntypedSpliceFlavour</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:PendingTcSplice" class="def">PendingTcSplice</a> <a href="src/GHC.Hs.Expr.html#PendingTcSplice" class="link">Source</a> <a href="#t:PendingTcSplice" class="selflink">#</a></p><div class="doc"><p>Pending Type-checker Splice</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:PendingTcSplice" class="def">PendingTcSplice</a> <a href="GHC-Hs-Expr.html#t:SplicePointName" title="GHC.Hs.Expr">SplicePointName</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:PendingTcSplice">Instances</h4><details id="i:PendingTcSplice" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:PendingTcSplice:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a></span> <a href="src/GHC.Hs.Instances.html#line-348" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:PendingTcSplice:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; c <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a>) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a>) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; m <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:PendingTcSplice:Outputable:2"></span> <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a></span> <a href="src/GHC.Hs.Expr.html#line-2839" class="link">Source</a> <a href="#t:PendingTcSplice" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:PendingTcSplice:Outputable:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:PendingTcSplice" title="GHC.Hs.Expr">PendingTcSplice</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:pprPendingSplice" class="def">pprPendingSplice</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:SplicePointName" title="GHC.Hs.Expr">SplicePointName</a> -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprPendingSplice" class="link">Source</a> <a href="#v:pprPendingSplice" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprSpliceDecl" class="def">pprSpliceDecl</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Types-Basic.html#t:SpliceExplicitFlag" title="GHC.Types.Basic">SpliceExplicitFlag</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprSpliceDecl" class="link">Source</a> <a href="#v:pprSpliceDecl" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_splice_decl" class="def">ppr_splice_decl</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_splice_decl" class="link">Source</a> <a href="#v:ppr_splice_decl" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprSplice" class="def">pprSplice</a> :: <span class="keyword">forall</span> p. <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsSplice" title="GHC.Hs.Expr">HsSplice</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprSplice" class="link">Source</a> <a href="#v:pprSplice" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_quasi" class="def">ppr_quasi</a> :: <a href="GHC-Utils-Outputable.html#t:OutputableBndr" title="GHC.Utils.Outputable">OutputableBndr</a> p =&gt; p -&gt; p -&gt; <a href="GHC-Data-FastString.html#t:FastString" title="GHC.Data.FastString">FastString</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_quasi" class="link">Source</a> <a href="#v:ppr_quasi" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:ppr_splice" class="def">ppr_splice</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#ppr_splice" class="link">Source</a> <a href="#v:ppr_splice" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsBracket" class="def">HsBracket</a> p <a href="src/GHC.Hs.Expr.html#HsBracket" class="link">Source</a> <a href="#t:HsBracket" class="selflink">#</a></p><div class="doc"><p>Haskell Bracket</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ExpBr" class="def">ExpBr</a> (<a href="GHC-Hs-Extension.html#t:XExpBr" title="GHC.Hs.Extension">XExpBr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:PatBr" class="def">PatBr</a> (<a href="GHC-Hs-Extension.html#t:XPatBr" title="GHC.Hs.Extension">XPatBr</a> p) (<a href="GHC-Hs-Pat.html#t:LPat" title="GHC.Hs.Pat">LPat</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:DecBrL" class="def">DecBrL</a> (<a href="GHC-Hs-Extension.html#t:XDecBrL" title="GHC.Hs.Extension">XDecBrL</a> p) [<a href="GHC-Hs-Decls.html#t:LHsDecl" title="GHC.Hs.Decls">LHsDecl</a> p]</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:DecBrG" class="def">DecBrG</a> (<a href="GHC-Hs-Extension.html#t:XDecBrG" title="GHC.Hs.Extension">XDecBrG</a> p) (<a href="GHC-Hs-Decls.html#t:HsGroup" title="GHC.Hs.Decls">HsGroup</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:TypBr" class="def">TypBr</a> (<a href="GHC-Hs-Extension.html#t:XTypBr" title="GHC.Hs.Extension">XTypBr</a> p) (<a href="GHC-Hs-Type.html#t:LHsType" title="GHC.Hs.Type">LHsType</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:VarBr" class="def">VarBr</a> (<a href="GHC-Hs-Extension.html#t:XVarBr" title="GHC.Hs.Extension">XVarBr</a> p) <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:TExpBr" class="def">TExpBr</a> (<a href="GHC-Hs-Extension.html#t:XTExpBr" title="GHC.Hs.Extension">XTExpBr</a> p) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> p)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:XBracket" class="def">XBracket</a> !(<a href="GHC-Hs-Extension.html#t:XXBracket" title="GHC.Hs.Extension">XXBracket</a> p)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsBracket">Instances</h4><details id="i:HsBracket" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsBracket:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-335" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsBracket:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsBracket:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-336" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsBracket:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsBracket:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-337" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsBracket:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsBracket:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-2812" class="link">Source</a> <a href="#t:HsBracket" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsBracket:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:isTypedBracket" class="def">isTypedBracket</a> :: <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isTypedBracket" class="link">Source</a> <a href="#v:isTypedBracket" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprHsBracket" class="def">pprHsBracket</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsBracket" title="GHC.Hs.Expr">HsBracket</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprHsBracket" class="link">Source</a> <a href="#v:pprHsBracket" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:thBrackets" class="def">thBrackets</a> :: <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#thBrackets" class="link">Source</a> <a href="#v:thBrackets" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:thTyBrackets" class="def">thTyBrackets</a> :: <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#thTyBrackets" class="link">Source</a> <a href="#v:thTyBrackets" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:ArithSeqInfo" class="def">ArithSeqInfo</a> id <a href="src/GHC.Hs.Expr.html#ArithSeqInfo" class="link">Source</a> <a href="#t:ArithSeqInfo" class="selflink">#</a></p><div class="doc"><p>Arithmetic Sequence Information</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:From" class="def">From</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:FromThen" class="def">FromThen</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:FromTo" class="def">FromTo</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:FromThenTo" class="def">FromThenTo</a> (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id) (<a href="GHC-Hs-Expr.html#t:LHsExpr" title="GHC.Hs.Expr">LHsExpr</a> id)</td><td class="doc empty">&nbsp;</td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:ArithSeqInfo">Instances</h4><details id="i:ArithSeqInfo" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ArithSeqInfo:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-340" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ArithSeqInfo:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ArithSeqInfo:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-341" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ArithSeqInfo:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ArithSeqInfo:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-342" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ArithSeqInfo:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:ArithSeqInfo:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-2862" class="link">Source</a> <a href="#t:ArithSeqInfo" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:ArithSeqInfo:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:ArithSeqInfo" title="GHC.Hs.Expr">ArithSeqInfo</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:pp_dotdot" class="def">pp_dotdot</a> :: <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pp_dotdot" class="link">Source</a> <a href="#v:pp_dotdot" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsMatchContext" class="def">HsMatchContext</a> p <a href="src/GHC.Hs.Expr.html#HsMatchContext" class="link">Source</a> <a href="#t:HsMatchContext" class="selflink">#</a></p><div class="doc"><p>Haskell Match Context</p><p>Context of a pattern match. This is more subtle than it would seem. See Note
 [Varieties of pattern matches].</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:FunRhs" class="def">FunRhs</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><div class="subs fields"><p class="caption">Fields</p><ul><li><dfn class="src"><a id="v:mc_fun" class="def">mc_fun</a> :: <a href="GHC-Hs-Extension.html#t:LIdP" title="GHC.Hs.Extension">LIdP</a> p</dfn><div class="doc"><p>function binder of <code>f</code></p></div></li><li><dfn class="src"><a id="v:mc_fixity" class="def">mc_fixity</a> :: <a href="GHC-Types-Basic.html#t:LexicalFixity" title="GHC.Types.Basic">LexicalFixity</a></dfn><div class="doc"><p>fixing of <code>f</code></p></div></li><li><dfn class="src"><a id="v:mc_strictness" class="def">mc_strictness</a> :: <a href="GHC-Core-DataCon.html#t:SrcStrictness" title="GHC.Core.DataCon">SrcStrictness</a></dfn><div class="doc"><p>was <code>f</code> banged?
 See Note [FunBind vs PatBind]</p></div></li></ul></div></td></tr><tr><td class="src"><a id="v:LambdaExpr" class="def">LambdaExpr</a></td><td class="doc"><p>Patterns of a lambda</p></td></tr><tr><td class="src"><a id="v:CaseAlt" class="def">CaseAlt</a></td><td class="doc"><p>Patterns and guards on a case alternative</p></td></tr><tr><td class="src"><a id="v:IfAlt" class="def">IfAlt</a></td><td class="doc"><p>Guards of a multi-way if alternative</p></td></tr><tr><td class="src"><a id="v:ProcExpr" class="def">ProcExpr</a></td><td class="doc"><p>Patterns of a proc</p></td></tr><tr><td class="src"><a id="v:PatBindRhs" class="def">PatBindRhs</a></td><td class="doc"><p>A pattern binding  eg [y] &lt;- e = e</p></td></tr><tr><td class="src"><a id="v:PatBindGuards" class="def">PatBindGuards</a></td><td class="doc"><p>Guards of pattern bindings, e.g.,
    (Just b) | Just _ &lt;- x = e
             | otherwise   = e'</p></td></tr><tr><td class="src"><a id="v:RecUpd" class="def">RecUpd</a></td><td class="doc"><p>Record update [used only in GHC.HsToCore.Expr to
    tell matchWrapper what sort of
    runtime error message to generate]</p></td></tr><tr><td class="src"><a id="v:StmtCtxt" class="def">StmtCtxt</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p)</td><td class="doc"><p>Pattern of a do-stmt, list comprehension,
 pattern guard, etc</p></td></tr><tr><td class="src"><a id="v:ThPatSplice" class="def">ThPatSplice</a></td><td class="doc"><p>A Template Haskell pattern splice</p></td></tr><tr><td class="src"><a id="v:ThPatQuote" class="def">ThPatQuote</a></td><td class="doc"><p>A Template Haskell pattern quotation [p| (a,b) |]</p></td></tr><tr><td class="src"><a id="v:PatSyn" class="def">PatSyn</a></td><td class="doc"><p>A pattern synonym declaration</p></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsMatchContext">Instances</h4><details id="i:HsMatchContext" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsMatchContext:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-320" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsMatchContext:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsMatchContext:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-321" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsMatchContext:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsMatchContext:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-322" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsMatchContext:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsMatchContext:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-2913" class="link">Source</a> <a href="#t:HsMatchContext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsMatchContext:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:isPatSynCtxt" class="def">isPatSynCtxt</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isPatSynCtxt" class="link">Source</a> <a href="#v:isPatSynCtxt" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:HsStmtContext" class="def">HsStmtContext</a> p <a href="src/GHC.Hs.Expr.html#HsStmtContext" class="link">Source</a> <a href="#t:HsStmtContext" class="selflink">#</a></p><div class="doc"><p>Haskell Statement Context.</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:ListComp" class="def">ListComp</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:MonadComp" class="def">MonadComp</a></td><td class="doc empty">&nbsp;</td></tr><tr><td class="src"><a id="v:DoExpr" class="def">DoExpr</a> (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a>)</td><td class="doc"><dl><dt>ModuleName.</dt><dd>do { ... }</dd></dl></td></tr><tr><td class="src"><a id="v:MDoExpr" class="def">MDoExpr</a> (<a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a>)</td><td class="doc"><dl><dt>ModuleName.</dt><dd>mdo { ... }  ie recursive do-expression</dd></dl></td></tr><tr><td class="src"><a id="v:ArrowExpr" class="def">ArrowExpr</a></td><td class="doc"><p>do-notation in an arrow-command context</p></td></tr><tr><td class="src"><a id="v:GhciStmtCtxt" class="def">GhciStmtCtxt</a></td><td class="doc"><p>A command-line Stmt in GHCi pat &lt;- rhs</p></td></tr><tr><td class="src"><a id="v:PatGuard" class="def">PatGuard</a> (<a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p)</td><td class="doc"><p>Pattern guard for specified thing</p></td></tr><tr><td class="src"><a id="v:ParStmtCtxt" class="def">ParStmtCtxt</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p)</td><td class="doc"><p>A branch of a parallel stmt</p></td></tr><tr><td class="src"><a id="v:TransStmtCtxt" class="def">TransStmtCtxt</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p)</td><td class="doc"><p>A branch of a transform stmt</p></td></tr></table></div><div class="subs instances"><h4 class="instances details-toggle-control details-toggle" data-details-id="i:HsStmtContext">Instances</h4><details id="i:HsStmtContext" open="open"><summary class="hide-when-js-enabled">Instances details</summary><table><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsStmtContext:Data:1"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)</span> <a href="src/GHC.Hs.Instances.html#line-316" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsStmtContext:Data:1"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcPs" title="GHC.Hs.Extension">GhcPs</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsStmtContext:Data:2"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)</span> <a href="src/GHC.Hs.Instances.html#line-317" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsStmtContext:Data:2"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcRn" title="GHC.Hs.Extension">GhcRn</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsStmtContext:Data:3"></span> <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)</span> <a href="src/GHC.Hs.Instances.html#line-318" class="link">Source</a> <a href="#t:Data" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsStmtContext:Data:3"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Instances.html">GHC.Hs.Instances</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:gfoldl">gfoldl</a> :: (<span class="keyword">forall</span> d b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (d -&gt; b) -&gt; d -&gt; c b) -&gt; (<span class="keyword">forall</span> g. g -&gt; c g) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gfoldl" class="link">Source</a> <a href="#v:gfoldl" class="selflink">#</a></p><p class="src"><a href="#v:gunfold">gunfold</a> :: (<span class="keyword">forall</span> b r. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; c (b -&gt; r) -&gt; c r) -&gt; (<span class="keyword">forall</span> r. r -&gt; c r) -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> -&gt; c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gunfold" class="link">Source</a> <a href="#v:gunfold" class="selflink">#</a></p><p class="src"><a href="#v:toConstr">toConstr</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:Constr" title="Data.Data">Constr</a> <a href="../base/src/Data.Data.html#toConstr" class="link">Source</a> <a href="#v:toConstr" class="selflink">#</a></p><p class="src"><a href="#v:dataTypeOf">dataTypeOf</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="../base/Data-Data.html#t:DataType" title="Data.Data">DataType</a> <a href="../base/src/Data.Data.html#dataTypeOf" class="link">Source</a> <a href="#v:dataTypeOf" class="selflink">#</a></p><p class="src"><a href="#v:dataCast1">dataCast1</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; c (t d)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast1" class="link">Source</a> <a href="#v:dataCast1" class="selflink">#</a></p><p class="src"><a href="#v:dataCast2">dataCast2</a> :: <a href="../base/Data-Typeable.html#t:Typeable" title="Data.Typeable">Typeable</a> t =&gt; (<span class="keyword">forall</span> d e. (<a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d, <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> e) =&gt; c (t d e)) -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> (c (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>)) <a href="../base/src/Data.Data.html#dataCast2" class="link">Source</a> <a href="#v:dataCast2" class="selflink">#</a></p><p class="src"><a href="#v:gmapT">gmapT</a> :: (<span class="keyword">forall</span> b. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> b =&gt; b -&gt; b) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> <a href="../base/src/Data.Data.html#gmapT" class="link">Source</a> <a href="#v:gmapT" class="selflink">#</a></p><p class="src"><a href="#v:gmapQl">gmapQl</a> :: (r -&gt; r' -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQl" class="link">Source</a> <a href="#v:gmapQl" class="selflink">#</a></p><p class="src"><a href="#v:gmapQr">gmapQr</a> :: <span class="keyword">forall</span> r r'. (r' -&gt; r -&gt; r) -&gt; r -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; r') -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; r <a href="../base/src/Data.Data.html#gmapQr" class="link">Source</a> <a href="#v:gmapQr" class="selflink">#</a></p><p class="src"><a href="#v:gmapQ">gmapQ</a> :: (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; [u] <a href="../base/src/Data.Data.html#gmapQ" class="link">Source</a> <a href="#v:gmapQ" class="selflink">#</a></p><p class="src"><a href="#v:gmapQi">gmapQi</a> :: <a href="GHC-Prelude.html#t:Int" title="GHC.Prelude">Int</a> -&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; u) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; u <a href="../base/src/Data.Data.html#gmapQi" class="link">Source</a> <a href="#v:gmapQi" class="selflink">#</a></p><p class="src"><a href="#v:gmapM">gmapM</a> :: <a href="GHC-Prelude.html#t:Monad" title="GHC.Prelude">Monad</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapM" class="link">Source</a> <a href="#v:gmapM" class="selflink">#</a></p><p class="src"><a href="#v:gmapMp">gmapMp</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMp" class="link">Source</a> <a href="#v:gmapMp" class="selflink">#</a></p><p class="src"><a href="#v:gmapMo">gmapMo</a> :: <a href="../base/Control-Monad.html#t:MonadPlus" title="Control.Monad">MonadPlus</a> m =&gt; (<span class="keyword">forall</span> d. <a href="../base/Data-Data.html#t:Data" title="Data.Data">Data</a> d =&gt; d -&gt; m d) -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a> -&gt; m (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> <a href="GHC-Hs-Extension.html#t:GhcTc" title="GHC.Hs.Extension">GhcTc</a>) <a href="../base/src/Data.Data.html#gmapMo" class="link">Source</a> <a href="#v:gmapMo" class="selflink">#</a></p></div></details></td></tr><tr><td class="src clearfix"><span class="inst-left"><span class="instance details-toggle-control details-toggle" data-details-id="i:id:HsStmtContext:Outputable:4"></span> <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p))</span> <a href="src/GHC.Hs.Expr.html#line-3056" class="link">Source</a> <a href="#t:HsStmtContext" class="selflink">#</a></td><td class="doc empty">&nbsp;</td></tr><tr><td colspan="2"><details id="i:id:HsStmtContext:Outputable:4"><summary class="hide-when-js-enabled">Instance details</summary><p>Defined in <a href="GHC-Hs-Expr.html">GHC.Hs.Expr</a></p> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:ppr">ppr</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#ppr" class="link">Source</a> <a href="#v:ppr" class="selflink">#</a></p><p class="src"><a href="#v:pprPrec">pprPrec</a> :: <a href="GHC-Prelude.html#t:Rational" title="GHC.Prelude">Rational</a> -&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Utils.Outputable.html#pprPrec" class="link">Source</a> <a href="#v:pprPrec" class="selflink">#</a></p></div></details></td></tr></table></details></div></div><div class="top"><p class="src"><a id="v:qualifiedDoModuleName_maybe" class="def">qualifiedDoModuleName_maybe</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> p -&gt; <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> <a href="src/GHC.Hs.Expr.html#qualifiedDoModuleName_maybe" class="link">Source</a> <a href="#v:qualifiedDoModuleName_maybe" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isComprehensionContext" class="def">isComprehensionContext</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isComprehensionContext" class="link">Source</a> <a href="#v:isComprehensionContext" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:isMonadStmtContext" class="def">isMonadStmtContext</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isMonadStmtContext" class="link">Source</a> <a href="#v:isMonadStmtContext" class="selflink">#</a></p><div class="doc"><p>Is this a monadic context?</p></div></div><div class="top"><p class="src"><a id="v:isMonadCompContext" class="def">isMonadCompContext</a> :: <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Prelude.html#t:Bool" title="GHC.Prelude">Bool</a> <a href="src/GHC.Hs.Expr.html#isMonadCompContext" class="link">Source</a> <a href="#v:isMonadCompContext" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:matchSeparator" class="def">matchSeparator</a> :: <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#matchSeparator" class="link">Source</a> <a href="#v:matchSeparator" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprMatchContext" class="def">pprMatchContext</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> p) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> p -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprMatchContext" class="link">Source</a> <a href="#v:pprMatchContext" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprMatchContextNoun" class="def">pprMatchContextNoun</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> id -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprMatchContextNoun" class="link">Source</a> <a href="#v:pprMatchContextNoun" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprAStmtContext" class="def">pprAStmtContext</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprAStmtContext" class="link">Source</a> <a href="#v:pprAStmtContext" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprStmtContext" class="def">pprStmtContext</a> :: <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> (<a href="GHC-Hs-Extension.html#t:IdP" title="GHC.Hs.Extension">IdP</a> id) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> id -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprStmtContext" class="link">Source</a> <a href="#v:pprStmtContext" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:prependQualified" class="def">prependQualified</a> :: <a href="GHC-Prelude.html#t:Maybe" title="GHC.Prelude">Maybe</a> <a href="GHC-Unit-Module-Name.html#t:ModuleName" title="GHC.Unit.Module.Name">ModuleName</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#prependQualified" class="link">Source</a> <a href="#v:prependQualified" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:matchContextErrString" class="def">matchContextErrString</a> :: <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> p =&gt; <a href="GHC-Hs-Expr.html#t:HsMatchContext" title="GHC.Hs.Expr">HsMatchContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> p) -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#matchContextErrString" class="link">Source</a> <a href="#v:matchContextErrString" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprMatchInCtxt" class="def">pprMatchInCtxt</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:Match" title="GHC.Hs.Expr">Match</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprMatchInCtxt" class="link">Source</a> <a href="#v:pprMatchInCtxt" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:pprStmtInCtxt" class="def">pprStmtInCtxt</a> :: (<a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idL, <a href="GHC-Hs-Extension.html#t:OutputableBndrId" title="GHC.Hs.Extension">OutputableBndrId</a> idR, <a href="GHC-Utils-Outputable.html#t:Outputable" title="GHC.Utils.Outputable">Outputable</a> body) =&gt; <a href="GHC-Hs-Expr.html#t:HsStmtContext" title="GHC.Hs.Expr">HsStmtContext</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) -&gt; <a href="GHC-Hs-Expr.html#t:StmtLR" title="GHC.Hs.Expr">StmtLR</a> (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idL) (<a href="GHC-Hs-Extension.html#t:GhcPass" title="GHC.Hs.Extension">GhcPass</a> idR) body -&gt; <a href="GHC-Utils-Outputable.html#t:SDoc" title="GHC.Utils.Outputable">SDoc</a> <a href="src/GHC.Hs.Expr.html#pprStmtInCtxt" class="link">Source</a> <a href="#v:pprStmtInCtxt" class="selflink">#</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.25.1</p></div></body></html>